{"packages":{"fragjan-check-exists":[{"released":"2026-05-27","version":"0.1.3+981615c3","tier":"free","description":"fragjan primitive: check if a file or directory exists in a project","supports":{"fragjan":{"min":"0.1.2"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":true}},{"released":"2026-05-27","version":"0.1.2+89db1135","tier":"free","description":"fragjan primitive: check if a file or directory exists in a project","supports":{"fragjan":{"min":"0.1.2"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":false}},{"released":"2026-05-23","version":"0.1.1+d6d3ba9a","tier":"free","description":"fragjan primitive: check if a file or directory exists in a project","supports":{"fragjan":{"min":"0.1.2"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":false}},{"released":"2026-05-19","version":"0.1.0+6ea950a6","tier":"free","description":"fragjan primitive: check if a file or directory exists in a project","supports":{"fragjan":{"min":"0.1.2"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":false}}],"storage-pg":[{"released":"2026-04-24","version":"0.3.0+833cfe38","tier":"free","description":"PostgreSQL storage backend for DAW projects","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"requires":{"system":{"postgresql":{"min":17.0},"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}}}},"latest":{"openbookregister":true}},{"released":"2026-04-24","version":"0.2.0+0531bc3c-dirty","tier":"free","description":"PostgreSQL storage backend for DAW projects","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"requires":{"system":{"postgresql":{"min":17.0},"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}}}},"latest":{"openbookregister":false}},{"released":"2026-04-13","version":"0.2.0+e6c1a475","tier":"free","description":"PostgreSQL storage backend for DAW projects","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"requires":{"system":{"postgresql":{"min":17},"pg-backend":{"one-of":{"pgmoon":{"min":1.12},"lua-sql-postgresql":{"min":2.6}}}}},"latest":{"openbookregister":false}},{"released":"2026-04-12","version":"0.1.1+cd594238","tier":"free","description":"PostgreSQL storage backend for DAW projects","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"requires":{"system":{"libpq":{"min":17},"psql":{"min":17}}},"latest":{"openbookregister":false}},{"released":"2026-04-12","version":"0.1.0+e9622390-dirty","tier":"free","description":"PostgreSQL storage backend for DAW projects","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"requires":{"system":{}},"latest":{"openbookregister":false}}],"fragjan-check-linepattern":[{"released":"2026-05-27","version":"0.1.2+5920794a","tier":"free","description":"fragjan primitive: match pattern on a line, with optional line-level exclusion","supports":{"fragjan":{"min":"0.2.0"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":true}},{"released":"2026-05-26","version":"0.1.1+09b9c01b","tier":"free","description":"fragjan primitive: match pattern on a line, with optional line-level exclusion","supports":{"fragjan":{"min":"0.2.0"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":false}}],"fragjan-check-contains":[{"released":"2026-05-27","version":"0.1.5+a223b94f","tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern","supports":{"fragjan":{"min":"0.1.3"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":true}},{"released":"2026-05-27","version":"0.1.4+0ba69437","tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern","supports":{"fragjan":{"min":"0.1.3"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":false}},{"released":"2026-05-27","version":"0.1.3+d80f1857","tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern","supports":{"fragjan":{"min":"0.1.3"}},"requires":{"system":{"lua":{"min":5.1}}},"latest":{"fragjan":false}},