burndown

Crates.ioburndown
lib.rsburndown
version0.1.0
sourcesrc
created_at2024-03-10 04:57:25.883991
updated_at2024-03-10 04:57:25.883991
descriptionburndown is a tool to help manage human readable, line-based task lists.
homepagehttps://github.com/pyjarrett/burndown
repositoryhttps://github.com/pyjarrett/burndown
max_upload_size
id1168404
size70,546
Paul Jarrett (pyjarrett)

documentation

https://github.com/pyjarrett/burndown

README

Burndown

A simple human-readable line-based task system.

Build Status

Motivation

To have local task lists with auto-sorting by metadata.

The default file operated on is todo.brnd.

File format

A burndown task list:

  • has one task per line
  • can be arbitrarily ordered without altering its meaning
  • all tasks either have a unique id, or no id
  • all tasks have a status, either open, cut or done

The general format for a line is:

<status> <id> <description> <metadata>

Special elements

These elements have special meaning:

  • [x] - Done (when at the start of a line)
  • [!] - Cut (when at the start of a line)
  • #[1-9][0-9]* an id for a task
  • @ - Reserve for task options (when at the start of a line)

Metadata

Metadata on a line is given by a key name, followed by a colon, followed by a data element or comma separated list with no whitespace between elements.

Any element which doesn't match a metadata key:value pair is part of the task description.

General Format:

metadata_tag:elem1,elem2

Metadata examples

tags:abc,def,ghi        Tags
deps:#123,#456,#6       Dependencies on other tasks

Other metadata types

risk:[1-9]              Risk
pri:[1-9]               Priority
est:[1-9][0-9]*         Task estimate in minutes

Date extensions

These are being reconsidered along with the parser option flag @ to improve customization support.

start:yyyy.MM.dd@HH.mm  Start time
due:yyyy.MM.dd          Due date
complete:yyyy.MM.dd     Completion date
elapsed:[1-9][0-9]*     Elapsed minutes on the task

Usage

Print tasks, sorted by priority

brnd

Adding a task

brnd add "Some high priority task I want to do pri:1"

Marking a specific task id as done

brnd finish 20

Cleanup task list ordering for easier tracking in git

This makes a great candidate for a precommit hook if you're storing a todo.brnd in your git repo.

brnd clean
Commit count: 0

cargo fmt