Skip to content

Latest commit

 

History

History
46 lines (35 loc) · 1.42 KB

File metadata and controls

46 lines (35 loc) · 1.42 KB

Data Storage

By default, Praefectus stores its tasks and other information in a set of Markdown files (according to the CommonMark specification), each prepended with an optional YAML Front Matter block.

When reading the database directory, Praefectus will try to infer some of the task attributes from the task file names and Markdown content; though, any attributes (including the ones that are read from the file name) may be overridden by the front matter block.

File name scheme is the following: [order.]<id>[.name].md.

If the first Markdown block in the file is a level 1 heading, then its contents will be read as the task title. Everything else in the file is read as the task description.

Here's an example task file (say, 42.my-task.md):

---
depends-on: [123, 456]
---
# Task Title
Some task description.

This task has the following explicit attributes:

  • id: my-task
  • order: 42
  • title: Task Title
  • dependsOn: [123, 465] (a list with two task ids)
  • description: Some task description.

When processing the tasks, Praefectus may change their attributes, which will then be mirrored by changing the file contents or names.