Skip to main content
.zbase files define ordered views over Markdown files and their indexed metadata. They are canonical, human-readable YAML and can be embedded from Markdown.

v0 .zbase schema

Top-level fields

View fields

View ID generation: lowercase slug from name, suffixed on conflict (table, table-2).

Core view types

v0 implementation scope: table and list. Others remain valid schema values but show a “not implemented yet” placeholder until renderer support exists. Plugin renderers use namespaced types like charts.bar, acme.matrix.

Filter tree shape

Allowed boolean keys: and, or, not. Empty and is true; empty or is false.

Expression grammar

Filters are Zorid-defined expression strings parsed to AST. The parser must never use eval, new Function, or arbitrary JavaScript.
Strings prefer double quotes ("task").

Operators and helpers

Operators: ==, !=, >, >=, <, <=, in, contains. File helpers
Field helpers
Date/time helpers

Special fields

Missing field behavior

Validation

  • Invalid base schema → mark whole base invalid; show error; don’t rewrite user file.
  • Invalid view or filter → mark that view invalid; other views remain usable.
  • Unknown plugin renderer type → placeholder; other views remain usable.

Source

Full .zbase schema and filter grammar on GitHub.