imdone Kanban docs
Filters
Imdone uses an intuitive query syntax for filtering your cards. You can query for any property of the task object. If the query doesn’t return a result the filter will be treated as a regular expression and matched against the rawTask and description properties.
Enter your query in the filter field and press the return/enter key to apply the filter. When the filter is applied, the red trashcan button for deleting all filtered cards will be enabled.
Copy the imdone URL for your filter
To copy the imdone URL for your filtered project board click the icon when a filter is applied.
Specify field names with values:
Find all cards with the 1.0.0 tag.
tags = "1.0.0"
Find all cards not in README
source.path != README.md
Find all cards in files created after January 1, 2020
source.createdTime > "2020-01-01"
Find all cards with dueDate before December 1, 2020
dueDate < "2020-12-01"
Find all cards with sub-tasks
progress.total > 0
Find all cards without due dates
metaKeys != due
Operators
Currently supports AND / OR, which may be nested:
Find all cards in the list TODO with the tag 1.0.0 or in the NOTES list
(tags = "1.0.0" AND list = TODO) OR list = NOTES
Find all cards with sub-tasks that have not been started.
progress.total > 0 and progress.completed = 0
Regular Expressions
Regexps may be used with the // syntax:
list = /DO/
Patterns
Wildcards may be used to generate regular expressions:
list = DO*
Sorting
Sorting may be applied with + for ascending or - for descending followed by the field name and multiple sort fields can bu used:
tags = "1.0.0" +source.path +due +created
Hiding Lists
To hide lists from the board use the hide: <list1>, <list2> filter:
tags = "1.0.0" +source.path hide: DONE, NOTES
Task Object
{
"frontMatter": {
"computed": {
"date": "${(new Date()).toDateString()}",
"time": "${(new Date()).toLocaleTimeString()}",
"timestamp": "${(new Date()).toISOString()}"
},
"context": [],
"links": [
{
"href": "https://twitter.com/intent/tweet?text=${encodedText}%0ATweeted%20with%20@imdoneio",
"icon": "fa-twitter",
"pack": "fab",
"title": "Tweet this card"
}
],
"meta": {},
"props": {
"hashtags": "#100daysofcode #programmer #developer #hacking #markdown #Productivity #indiehackers #blogger"
},
"tags": [],
"template": "\n<!-- created:${timestamp} -->\n"
},
"rawTask": "[Change progress to have `completed` and `total` properties +ignore](#DOING:)
"beforeText": "## ",
"text": "Change progress to have `completed` and `total` properties",
"list": "DOING",
"order": 3.75,
"hasColon": true,
"line": 19,
"id": "7af625b65e81ace9ad36bdca2f958fb42a5fd4d2",
"repoId": "/Users/jesse/projects/imdone",
"source": {
"createdTime": "2020-11-23T17:23:31.691Z",
"ext": "md",
"id": "notes/2020-11/2020-11-23.md",
"lang": "text",
"modified": false,
"modifiedTime": Date("2020-11-26T20:13:39.303Z"),
"path": "notes/2020-11/2020-11-23.md",
"repoId": "/Users/jesse/projects/imdone",
"type": "File"
},
"type": "MARKDOWN",
"tags": [
"promo"
],
"context": [],
"meta": {
"created": [
"2020-11-23T22:32:32.608Z"
],
"due": [
"2020-11-27T18:00:00.000Z"
],
"expand": [
"1"
]
},
"metaKeys": [
"created",
"due",
"expand"
],
"description": [
"- [x] Make code changes",
"- [ ] Add docs for `progress.total > 0` query",
"- [ ] Add docs for `progress.total > 0 and progress.completed = 0` query",
"- [ ] Update task json in filters.md to include new progress attributes",
"<!-- created:2020-11-23T22:32:32.608Z -->",
"<!-- due:2020-11-27T18:00:00.000Z -->",
"<!-- expand:1 -->",
"<!-- +promo
order:3.75
started:2025-02-26T08:39:15-05:00
-->"
],
"taskStartOnLine": 0,
"commentStartOnLine": 0,
"originalDescriptionLength": 8,
"descriptionStartsWith": "",
"completed": "2020-11-27T18:38:35.054Z",
"completedDate": "2020-11-27T18:38:35.054Z",
"created": "2020-11-23T22:32:32.608Z",
"createdDate": "2020-11-23T22:32:32.608Z",
"due": "2020-11-27T18:00:00.000Z",
"dueDate": "2020-11-27T18:00:00.000Z",
"progress": {
"completed": 1,
"total": 4
},
"allTags": [
"promo"
],
"allContext": [],
"allMeta": {
"created": [
"2020-11-23T22:32:32.608Z"
],
"due": [
"2020-11-27T18:00:00.000Z"
],
"expand": [
"1"
]
}
}