{"packages":{"fragjan-check-markdown":[{"description":"fragjan primitive: extract structured content from Markdown files","released":"2026-05-27","latest":{"fragjan":true},"version":"0.1.1+1b35432c","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.0"}}},{"description":"fragjan primitive: extract structured content from Markdown files","released":"2026-05-24","latest":{"fragjan":false},"version":"0.1.0+4906b51e","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.0"}}}],"fragjan-check-contains":[{"description":"fragjan primitive: check if a file contains or does not contain a pattern","released":"2026-05-27","latest":{"fragjan":true},"version":"0.1.5+a223b94f","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.3"}}},{"description":"fragjan primitive: check if a file contains or does not contain a pattern","released":"2026-05-27","latest":{"fragjan":false},"version":"0.1.4+0ba69437","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.3"}}},{"description":"fragjan primitive: check if a file contains or does not contain a pattern","released":"2026-05-27","latest":{"fragjan":false},"version":"0.1.3+d80f1857","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.3"}}},{"description":"fragjan primitive: check if a file contains or does not contain a pattern","released":"2026-05-19","latest":{"fragjan":false},"version":"0.1.2+60af72cd","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.3"}}},{"description":"fragjan primitive: check if a file contains or does not contain a pattern","released":"2026-05-19","latest":{"fragjan":false},"version":"0.1.1+b61170f5","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.3"}}},{"description":"fragjan primitive: check if a file contains or does not contain a pattern","released":"2026-05-19","latest":{"fragjan":false},"version":"0.1.0+4e20f780","tier":"free","requires":{"system":{"lua":{"min":5.1}}},"supports":{"fragjan":{"min":"0.1.3"}}}],"fragjan-check-filecorrelation":[{"description":"Correlate two patterns within a file (if A present, B must/must-not be present)","released":"2026-05-31","latest":{"fragjan":true},"version":"0.1.0+ccc8b03a","tier":"free","requires":{"system":[]},"supports":{"fragjan":{"min":"0.2.10"}}}],"storage-pg":[{"description":"PostgreSQL storage backend for DAW projects","released":"2026-04-24","latest":{"openbookregister":true},"version":"0.3.0+833cfe38","tier":"free","requires":{"system":{"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}},"postgresql":{"min":17.0}}},"supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}}},{"description":"PostgreSQL storage backend for DAW projects","released":"2026-04-24","latest":{"openbookregister":false},"version":"0.2.0+0531bc3c-dirty","tier":"free","requires":{"system":{"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}},"postgresql":{"min":17.0}}},"supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}}},{"description":"PostgreSQL storage backend for DAW projects","released":"2026-04-13","latest":{"openbookregister":false},"version":"0.2.0+e6c1a475","tier":"free","requires":{"system":{"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}},"postgresql":{"min":17}}},"supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}}},{"description":"PostgreSQL storage backend for DAW projects","released":"2026-04-12","latest":{"openbookregister":false},"version":"0.1.1+cd594238","tier":"free","requires":{"system":{"libpq":{"min":17},"psql":{"min":17}}},"supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}}},{"description":"PostgreSQL storage backend for DAW projects","released":"2026-04-12","latest":{"openbookregister":false},"version":"0.1.0+e9622390-dirty","tier":"free","requires":{"system":{}},"supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}}}],"log-