Data Transformation #
Filtering #
$filter supports structured conditions with field, op, and value.
Supported operators:
eq,neqgt,gte,lt,ltecontainsexistsregeq,regneq
Child $filter overrides parent $filter when both are present.
Sanitization #
$pick: keep only selected fields.$omit: remove selected fields.
Visibility Control #
$private: true suppresses generation of the target endpoint and all descendants.
$emit controls endpoint emission at that node.
$emit: ["list"]emits only collection endpoints.$emit: ["ids"]emits only per-item endpoints.$emit: ["list", "ids"]emits both.$emit: []emits neither (allowed).
Legacy $emit_list, $emit_id, and $emit_items are still accepted for backward compatibility.
Aggregation #
$aggregate bundles multiple endpoints or collections into one endpoint payload.
Template Expansion #
Template keys such as ${year} can be expanded by:
$valuesfor static lists.$derivefor values extracted from loaded source data.
Build and Runtime Experience #
- Incremental builds via file hash cache.
- Automatic TypeScript
.d.tsgeneration. - Automatic media asset copy and path rewrite for referenced local files.
Platform Integration #
- Automatic
_headersgeneration for Cloudflare Pages and Netlify. - Automatic
vercel.jsongeneration for Vercel CORS/header behavior.
Serializer Flexibility #
- JSON output for static API endpoints.
- TypeScript/JavaScript module output for frontend build pipelines.
- SQLite output for offline/local query scenarios.
- Per-serializer
minifyoption.