{"packages":{"auth":[{"tier":"free","description":"Authentication for DAW projects -- API key auth, JWT (no cookies)","version":"0.2.0+bedb8476","requires":{"system":{"openssl":{"min":3.0}}},"released":"2026-04-24","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":true}},{"tier":"free","description":"Authentication for DAW projects -- API key auth, JWT (no cookies)","version":"0.1.0+a905842c","requires":{"system":{"openssl":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}}],"storage-sqlite":[{"tier":"free","description":"SQLite storage backend","version":"0.2.0+de4d5c96","requires":{"system":{"sqlite3-lua":{"one-of":{"lsqlite3":{"min":"0.9.0"},"lua-sql-sqlite3":{"min":"0.9.0"}}}}},"released":"2026-04-22","supports":{"steurjan":{"min":"1.0.0","max":"<2.0.0"},"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":true,"openbookregister":true}},{"tier":"free","description":"SQLite storage backend","version":"0.1.3+b47cc6aa","requires":{"system":{"sqlite3-lua":{"one-of":{"lsqlite3":{"min":"0.9.0"},"lua-sql-sqlite3":{"min":"0.9.0"}}}}},"released":"2026-04-17","supports":{"steurjan":{"min":"1.0.0","max":"<2.0.0"},"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false,"openbookregister":false}},{"tier":"free","description":"SQLite storage backend","version":"0.1.2+2ea11433","requires":{"system":{"lua-sql-sqlite3":{"min":"0.9.0"}}},"released":"2026-04-17","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"SQLite storage backend","version":"0.1.1+243bf884","requires":{"system":{"luasqlite3":{"min":"0.9.0"}}},"released":"2026-04-17","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"SQLite storage backend","version":"0.1.0+65568170","requires":{"system":{"luasqlite3":{"min":"0.9.0"}}},"released":"2026-04-17","supports":{"steurjan":{"min":"1.0.0","max":"<2.0.0"},"openbookregister":{"min":"1.0.0","max":"<2.0.0"}},"latest":{"steurjan":false,"openbookregister":false}}],"api":[{"tier":"free","description":"API layer for DAW HTTP services -- CORS, rate-limiting, JSON helpers, auth hook","version":"0.2.0+f6586377","requires":{"system":[]},"released":"2026-04-24","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":true}},{"tier":"free","description":"API layer for DAW HTTP services -- CORS, rate-limiting, JSON helpers, auth hook","version":"0.1.0+7d291211","requires":{"system":{}},"released":"2026-04-14","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}}],"tax-calc":[{"tier":"free","description":"Decimal-accurate net/gross price calculation for DAW systems","version":"0.1.1+ace89389","requires":{"system":[]},"released":"2026-05-01","supports":{"stapul":{"min":"0.1.0","max":"<2.0.0"},"kaupapi":{"min":"0.1.0","max":"<2.0.0"},"steurjan":{"min":"0.1.0","max":"<2.0.0"},"raidjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"stapul":true,"kaupapi":true,"steurjan":true,"raidjan":true}},{"tier":"free","description":"One-line description","version":"0.1.0+3097a54a","requires":{"system":[]},"released":"2026-05-01","supports":{"steurjan":{"min":"1.0.0","max":"<2.0.0"}},"latest":{"steurjan":false}}],"fragjan-check-linecount":[{"tier":"free","description":"fragjan primitive: count lines in a file","version":"0.1.1+880e75e3","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.0"}},"latest":{"fragjan":true}},{"tier":"free","description":"fragjan primitive: count lines in a file","version":"0.1.0+e89ecf2d","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-18","supports":{"fragjan":{"min":"0.1.0"}},"latest":{"fragjan":false}}],"fragjan-check-contains":[{"tier":"free","supports":{"fragjan":{"min":"0.1.3"}},"version":"0.1.2+60af72cd","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","latest":{"fragjan":true},"description":"fragjan primitive: check if a file contains or does not contain a pattern"},{"tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern","version":"0.1.1+b61170f5","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.3"}},"latest":{"fragjan":false}},{"tier":"free","supports":{"fragjan":{"min":"0.1.3"}},"version":"0.1.0+4e20f780","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","description":"fragjan primitive: check if a file contains or does not contain a pattern","latest":{"fragjan":false}}],"fragjan-check-exists":[{"tier":"free","description":"fragjan primitive: check if a file or directory exists in a project","version":"0.1.0+6ea950a6","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.2"}},"latest":{"fragjan":true}}],"git":[{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.6+421b7bc3","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-18","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":true}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.5+f1f408ed","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-18","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.4+9d9dc1ba","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-18","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.3+8f74be4f","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-16","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.2+e9ea50cc","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-16","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.1+4b8784fb","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-16","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"1.0.0+e69ea947-dirty","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-16","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.2.4+20b37df9","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-11","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.2.3+9f0c258a","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-10","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.2.2+69947086","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-10","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.2.1+d72bb814","requires":{"system":{"git":{"min":2.0}}},"released":"2026-05-10","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.2.0+f7281c13","requires":{"system":{"git":{"min":2.0}}},"released":"2026-04-18","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.1.6+b4f9258c","requires":{"system":{"git":{"min":2}}},"released":"2026-04-03","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false}},{"tier":"free","description":"Git VCS adapter for DAW projects","version":"0.1.5+6fe653cc","requires":{"system":{"git":{"min":2}}},"released":"2026-03-24","supports":{"steurjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"steurjan":false,"kaupapi":true}}],"product":[{"tier":"free","description":"Shared product module -- validation, category resolution, price lookup, bundle expansion","version":"0.2.0+69bf06a6","requires":{"system":[]},"released":"2026-05-03","supports":{"stapul":{"min":"0.1.0","max":"<2.0.0"},"redan":{"min":"0.1.0","max":"<2.0.0"},"kaupapi":{"min":"0.1.0","max":"<2.0.0"},"steurjan":{"min":"0.1.0","max":"<2.0.0"},"raidjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"stapul":true,"redan":true,"kaupapi":true,"steurjan":true,"raidjan":true}},{"tier":"free","description":"Shared product module -- validation, category resolution, price lookup, bundle expansion","version":"0.1.2+570bdf80","requires":{"system":[]},"released":"2026-05-03","supports":{"stapul":{"min":"0.1.0","max":"<2.0.0"},"redan":{"min":"0.1.0","max":"<2.0.0"},"kaupapi":{"min":"0.1.0","max":"<2.0.0"},"steurjan":{"min":"0.1.0","max":"<2.0.0"},"raidjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"stapul":false,"redan":false,"kaupapi":false,"steurjan":false,"raidjan":false}}],"storage-pg":[{"tier":"free","description":"PostgreSQL storage backend for DAW projects","version":"0.3.0+833cfe38","requires":{"system":{"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}},"postgresql":{"min":17.0}}},"released":"2026-04-24","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":true}},{"tier":"free","description":"PostgreSQL storage backend for DAW projects","version":"0.2.0+0531bc3c-dirty","requires":{"system":{"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}},"postgresql":{"min":17.0}}},"released":"2026-04-24","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"PostgreSQL storage backend for DAW projects","version":"0.2.0+e6c1a475","requires":{"system":{"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}},"postgresql":{"min":17}}},"released":"2026-04-13","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"PostgreSQL storage backend for DAW projects","version":"0.1.1+cd594238","requires":{"system":{"libpq":{"min":17},"psql":{"min":17}}},"released":"2026-04-12","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"PostgreSQL storage backend for DAW projects","version":"0.1.0+e9622390-dirty","requires":{"system":{}},"released":"2026-04-12","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}}],"fragjan-check-pattern":[{"tier":"free","description":"fragjan primitive: search for a pattern in a file","version":"0.1.2+ef98877a","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.0"}},"latest":{"fragjan":true}},{"tier":"free","description":"fragjan primitive: search for a pattern in a file","version":"0.1.1+0eaf02b0","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.0"}},"latest":{"fragjan":false}},{"tier":"free","description":"fragjan primitive: search for a pattern in a file","version":"0.1.0+b370900b","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-18","supports":{"fragjan":{"min":"0.1.0"}},"latest":{"fragjan":false}}],"http-server":[{"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving","version":"0.2.0+77253d3d","requires":{"system":{"socket":{"min":3.0}}},"released":"2026-04-22","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":true}},{"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving","version":"0.1.3+81faed66","requires":{"system":{"socket":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving","version":"0.1.2+eb857c68","requires":{"system":{"socket":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving","version":"0.1.1+c696c6cf","requires":{"system":{"lua-socket":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"openbookregister":false}},{"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving","version":"0.1.0+ca749c8a","requires":{"system":{"lua-socket":{"min":3}}},"released":"2026-04-14","supports":{},"latest":{}},{"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving","version":"0.1.0+ca749c8a-dirty","requires":{"system":{"lua-socket":{"min":3}}},"released":"2026-04-14","supports":{},"latest":{}}],"daw-modul-product":[{"tier":"free","description":"Shared product module -- validation, category resolution, price lookup, bundle expansion","version":"0.1.1+b7154039","requires":{"system":[]},"released":"2026-05-01","supports":{"stapul":{"min":"0.1.0","max":"<2.0.0"},"redan":{"min":"0.1.0","max":"<2.0.0"},"kaupapi":{"min":"0.1.0","max":"<2.0.0"},"steurjan":{"min":"0.1.0","max":"<2.0.0"},"raidjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"stapul":true,"redan":true,"kaupapi":true,"steurjan":true,"raidjan":true}}],"federation-sync":[{"tier":"free","description":"Block-based federation sync protocol for DAW instances","version":"0.1.0+56f7ba6d","requires":{"system":[]},"released":"2026-05-03","supports":{"kaupapi":{"min":"0.1.0","max":"<2.0.0"},"redan":{"min":"0.1.0","max":"<2.0.0"},"obr":{"min":"0.1.0","max":"<2.0.0"},"steurjan":{"min":"0.1.0","max":"<2.0.0"},"raidjan":{"min":"0.1.0","max":"<2.0.0"}},"latest":{"kaupapi":true,"redan":true,"obr":true,"steurjan":true,"raidjan":true}}]}}