@madeagency/trello-wrangler
v0.0.8
Published
Aggregate trello cards by schema
Downloads
12
Readme
Trello Wrangler
Transforms Trello data into the provided schema.
Example:
Run:
$ node example.js
Schema:
Types:
Organization
...
Board
...
List
...
Card
...
Inheritance of types:
Organization
↓
Board
↓
List
↓
Card
Progress (avaiable schema values):
Type: Organization
{
"type": "organization",
"filter": { [name] },
"children": [childType] //"board", "list" or "card"
}
Type: Board
{
"type": "board",
"children": [childType] //"list" or "card"
}
Type: List
{
"type": "list",
"filter": { [name] },
"children": [childType] //"card"
}
Proposed options:
normalize
boolean
Should the resulting json be normalized?
Proposed examples:
Explicit, filter at intermediate level:
{
"type": "organization",
"filter" : {
"name" : "madedevelopment"
}
"children": {
"type": "list",
"filter" : {
"name": [
"Backlog",
"Open",
"Work started",
"In review",
"Done"
]
}
"children": {
"type": "card"
}
}
}
Shortcut tree, assumes inheritance by dependency graph above. Does not filter implicit nodes:
{
"type": "organization",
"filter" : {
"name" : "madedevelopment"
}
"children": {
"type": "card"
}
}
The inclusion of the "type" property for each node is to assist with grouping data, and for specifying how deep the fetch graph will be. Children that are not specified will not be fetched, unless the underlying Trello api method already includes them. Implicit intermediate nodes will be normalized into their children and will only be identifiable by a "[parentType]Id" property. This would allow them to be split out and grouped by their immediate parents later.
TODO:
- Schema transformations
- Export modules
- Auth configuration
- Documentation
- Publish to NPM
- Rewrite in clojurescript... (this should all just be reducers and combinators, right?)