Skip to content

First-party extensions

The extensions architect ships (#368), each a model of how one is built: a linked extension that also runs as a process, its data as vault notes, its API as a service.

1 min read

Architect’s own extensions live in this repo under extensions/, one crate each, so they can be moved to a repo of their own later. They are the app’s features and the showcase of how an extension is built (Extensions, “The rule”). Each one:

  • is one linked::Extension value: the app links it in (Extensions::with_linked), and its crate’s program serves the same value as a process (Guest::extension), so EXT_CLONE {"id": …} gives a development copy that overrides the built-in;
  • keeps its data as plain markdown in the vault, reached only through the host service (VAULT_*, BASES_*), so the process copy works as the linked one does;
  • offers its API as a service ([provides]), and lights up with the others it [uses] when they are installed, running alone when they are not;
  • is tested both ways against a real vault.
extensionwhat it ispage
Projects (extensions/projects)a page on architect’s built-in project kind, project types, goals and milestonesProjects
Tasks (extensions/tasks)tasks as vault notes in TaskNotes’ shape: list, Today, My tasks, a kanban base viewTasks
Time Tracker (extensions/time-tracker)timers and time entries in a note’s timeEntries, totals per task, project, day and week, a timesheet base view, a reportTime Tracker
Calendar (extensions/calendar)events as notes (Task’s shape) with repeats and exceptions, day, week, month and agenda views with drag, tasks and tracked time on it, calendar and timeline base viewsCalendar
Day Plans (extensions/dayplan)day templates (allocatable blocks, meal prep, resets, sleep), rules that pick each day’s template with overrides, each day’s plan with blocks given to tasks, projects and recipes, drawn under the Calendar’s eventsDay Plans

Projects, Tasks and the Time Tracker are the Project Management bundle (#375): each runs alone, and together a project’s page shows its tasks and their time, and a task its timer.

In this section

architect·Published with architect