.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
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
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 useeval, new Function, or arbitrary JavaScript.
"task").
Operators and helpers
Operators:==, !=, >, >=, <, <=, in, contains.
File 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.