Plaintext Task Management with Dendron and VSCode
Tasks come in all shapes and sizes.
Sometimes, we simply need a checkbox and a bullet to know what's complete and what's left to-do. Other times, we need to track more complex attributes of our tasks like deadlines, priorities, statuses, assignments, dependencies and more.
In this tutorial, we'll explore a simple and scalable solution to task management with Dendron. Dendron is a developer-focused note taking tool that is open source, local-first, and integrated with Visual Studio Code.
If you'd like to follow along, make sure you've read Getting Started, and are able to open a workspace.
Let's imagine a friend is having a birthday, and we want to bake some cookies to help celebrate. The party is in a few hours, so we'll need to act fast!
To show up to the party with cookies, we'll need to complete three tasks:
- go to the store and buy the ingredients
- mix the ingredients and bake the cookies
- bring the freshly-baked cookies to the party
Create bullet tasks
We can begin with the simplest form of task management: a bullet list of checkmarks.
- Open lookup (
birthday-cookiesin the text prompt and hit enter to create a note
- Copy the following into the
- [ ] buy ingredients - [ ] bake cookies - [ ] bring cookies to party
Check off a bullet task
After writing down our list, we make a quick trip to the store and return, ingredients in hand. We have completed our first task! Let's mark it off our list.
xinto the brackets next to
- [x] buy ingredients - [ ] bake cookies - [ ] bring cookies to party
Your bullet list should now render Markdown checkboxes in Preview.
Create a task note
Not that we have the ingredients, it's time to bake. Looking at our
bake cookies task, something feels missing...we don't know the steps involved in baking! Let's fix that...
- Delete the bracket next to
bake cookies. Your note should look like the following:
- [x] buy ingredients - bake cookies - [ ] bring cookies to party
- Select the text
- Open the command palette (
Cmd+Shift+P) and type
- Select the
Dendron: Create Task Notecommand and hit
- You should see the text
birthday-cookies.bake-cookies. If not, correct the text. Hit
For reference, we are using the following configuration for this tutorial (the default in Dendron):
task: name: task dateFormat: y.MM.dd addBehavior: asOwnDomain statusSymbols: '': ' 'p wip: w done: x assigned: a moved: m blocked: b delegated: l dropped: d pending: 'y' prioritySymbols: H: high M: medium L: low
Visit here for more information on the configuration of special notes like task notes.
Check off a task note
Congrats, you've created a task note! You may notice something strange with this new note. There's something extra in the frontmatter (the
YAML text at the top of the file).
🗒 Note: Frontmatter is hidden by default in task notes. To expand, click the arrow next to the top line.
- Add an
statusso it reads:
status: 'x' due: '' priority: '' owner: ''
- Navigate back to the
💡 Tip: To quickly go back to the previous note, use the
You should see that the
bake-cookies note has a filled checkbox.
- [x] buy ingredients - [x] [[bake cookies|birthday-cookies.bake-cookies]] - [ ] bring cookies to party
Task notes give an up-to-date view of the task's status in any place they are linked to. But let's not get ahead of ourselves, we haven't done any baking yet!
- Return to
birthday-cookies.bake-cookiesand remove the
statusso that it reads:
🚧 Under Construction: We appreciate your patience as we develop new features like task notes. Currently, checkboxes are under construction, and are not rendering correctly in Preview.
Break into subtasks
Let's make a task for each step:
- prepare the oven and ingredients
- mix the ingredients
- form dough balls and bake in the oven
- Copy the following into
- prepare oven and ingredients - mix ingredients - form balls and bake
mix ingredients and
form balls and bake subtasks, create a task note as you did above:
- Select the text for the new task
- Open the
- Run the
Dendron: Create Task Notecommand
bake-cookies task should now look as follows:
- [ ] [[prepare oven and ingredients|bake-cookies.prepare-oven-and-ingredients]] - [ ] [[mix ingredients|bake-cookies.mix-ingredients]] - [ ] [[form balls and bake|bake-cookies.form-balls-and-bake]]
- Navigate to
bake-cookies.prepare-oven-and-ingredientsand check out at the backlinks of the note
💡 Tip: By nesting our tasks notes (linking to a task inside another task), we can monitor which tasks are dependent on others using backlinks.
- Return to your
birthday-cookiesnote and hover your mouse above the link to the
bake-cookiesnote. You should see the newly created tasks in Quick Preview.
💡 Tip: Try clicking on one of the tasks in the Quick Preview. Look, it's a link!
Look at you go, you've created subtasks!
Now, you can track your progress at a more granular level through the different baking steps. Soon, the smell of cookies will be in the air, and it will be time to party! 🥳
Upon completing this tutorial, you've learned about:
- creating a simple tasks using
- creating a task note
- adding subtasks
Task management in Dendron is flexible. Through task-specific features like bullet tasks, task notes, subtasks and configs, as well as familiar features like hierarchies and bidirectional links, Dendron gives you the tools to tackle tasks at any scale.
- Customize your task notes with a custom configuration
- Learn about the process of starting simple and reshaping with the Amoeba Pattern
- Learn more about how Dendron supports other workflows, like Bullet Journaling and Todos
- Read through the proposal for task notes and give your feedback on tasks in Dendron
- See how other Dendrologist manage tasks from a live demonstration
- Learn how Dendron manages tasks as a team in our organization handbook