Skip to main content

Crate kanbrain_core

Crate kanbrain_core 

Source
Expand description

kanbrain’s core: entries and their markdown files, tags, and the operations on them (brain). Shared by the command line (kb) and the kanban desktop app (kanbrain, which also takes its commands). See docs/development.md for an overview of the modules.

It’s published on crates.io only because kanbrain, the command line, depends on it. Its API serves those two programs and changes with them: it isn’t meant for other crates, and its versions follow kanbrain’s.

Modules§

api
Operations by entry id, for the command line: what an agent (or a script) does without a screen. They go through the same Brain actions as the desktop app, so tracking rules, tag colors and file names behave exactly as there.
brain
The brain: every entry in the data folder, and the operations on them. Time is always tracked: doing holds one task at a time, whose clock runs; each brain (the central one, each project repository) has its own, so work in different projects can run side by side. The command line and the desktop app both go through it, so tracking rules, tag colors and file names behave the same everywhere. It holds no screen state; the desktop app keeps its own.
cli
The command line: which command to run, with its options.
export
Reports as markdown: what the desktop app’s report shows, as tables.
model
Entries (tasks, notes and decisions), their links, status history, time-tracking sessions and comments.
period
Calendar periods used by reports: an hour, a day, an ISO week (Monday–Sunday) or a month.
platform
Operating-system specifics.
projects
Projects: work that keeps its tasks next to its code, in one or more repositories. Each repository has its own .brain/ (its own tasks, numbered from 1) and belongs to a project; several services of one project are several repositories with the same project name. init registers each in the central brain’s projects.md, so the kanban app can show every project and filter by one, or by one of its repositories.
store
The data folder: one NNNN-slug.md file per task, tags.md, and exported reports in reports/.
tags
Tag colors: a 16-color palette assigned without repeats, stored in tags.md.