How it works

When you create a TODO board, imdone clones the repo and branch you choose and scans your source code for TODO (FIXME, HACK, etc.) comments, syncing each one with your board. If you choose to automatically merge the PR, imdone will update your chosen branch with changes. If you don't choose to automatically merge the PR, then imdone will update the imdone-todo-updates branch with changes.

Imdone creates a webhook that runs when you push code to your github repo. It looks for new, updated and deleted TODO comments.

  • When a new TODO comment is found, an issue can be created with the TODO line as the title and the following comment lines (description) as the body.
  • When a TODO comment or it's description is updated imdone can update the TODO's corresponding issue.
  • When a TODO comment is deleted, imdone will close it's associated issue.
  • Using the +label-name format, you can add labels to your cards and issues.

Imdone aims to keep you in the flow of your work while capturing tasks to be accomplished later. Most issue trackers require a user interface. Imdone lets you capture tasks in a simple text syntax that has roots in todo.txt format and programming comment tags like TODO and FIXME.

Imdone format

Code Style

// TODO This is a task
// TODO: This is a task
// TODO: A task with a descrption looks like this.
// Every line after the task is part of the description until we find another
// task, a blank comment line, or a line of code
// - A list item
// - Another list item

Hash Style

#TODO: This is a task
#to-do: This is a task

Markdown Style

[This is a task](#todo:)

Task syntax

  • List names in code style tasks must match this regular expression ([A-Z]+[A-Z-_]+?).
  • In Hash and markdown style tasks list name can be any combination of upper and lower case letters, underscores and dashes
  • In Hash and markdown style tasks the list name must be followed by a :
  • In code, tasks can be any style but must be in a line or block comment
    • Code style tasks are only detected in comments for files with extensions listed in imdone-core/languages.js or the languages attribute in the .imdone/config.json
  • For code and hash style tasks, the task text is terminated by the end of line
  • Task text can have todo.txt formatting excluding the completion and priority markers.
  • Task text can have markdown formatting

todo.txt syntax examples

Create date

// TODO: 2015-02-09 This task was created on 2015-02-09

Completed date

// TODO: x 2015-02-09 2015-02-08 This task was created on 2015-02-08 and completed on 2015-02-09

Due Date

// TODO: This task is due on 2015-02-09 due:2015-02-09

Tags (todo.txt projects)

// FIXME: This task has a *madjs* tag +madjs


// HACK: This task has a *madjs* context @madjs


// DOING: This task has profile metadata profile:piascikj

Not using GitHub for your backlog?

Right now we're pretty focussed on making our github and waffle integration rock solid, but we've got webhooks too! They're still in beta, but after you setup your project and feel the urge to tinker, you might want to check these out...

Try our free TODO kanban board, imdone-atom for Atom Editor

Loved by some of the best people on earth

Check out these TODO numbers in open source...

~2750 TODOs

TODO comments


A code comment that begins with TODO, FIXME, HACK, XXX etc. We know most of them and if we don't you can add them yourself!

© 2018 Innobuilt Software LLC. All rights reserved. | Privacy Policy | Contact Us

Icons designed by Freepik from Flaticon