{"packages":{"http-server":[{"latest":{"openbookregister":true},"version":"0.2.0+77253d3d","requires":{"system":{"socket":{"min":3.0}}},"released":"2026-04-22","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving"},{"latest":{"openbookregister":false},"version":"0.1.3+81faed66","requires":{"system":{"socket":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving"},{"latest":{"openbookregister":false},"version":"0.1.2+eb857c68","requires":{"system":{"socket":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving"},{"latest":{"openbookregister":false},"version":"0.1.1+c696c6cf","requires":{"system":{"lua-socket":{"min":3}}},"released":"2026-04-14","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving"},{"latest":{},"version":"0.1.0+ca749c8a","requires":{"system":{"lua-socket":{"min":3}}},"released":"2026-04-14","supports":{},"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving"},{"latest":{},"version":"0.1.0+ca749c8a-dirty","requires":{"system":{"lua-socket":{"min":3}}},"released":"2026-04-14","supports":{},"tier":"free","description":"Generic TCP-based HTTP server with URL param routing and static file serving"}],"api":[{"latest":{"openbookregister":true},"version":"0.2.0+f6586377","requires":{"system":[]},"released":"2026-04-24","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"API layer for DAW HTTP services -- CORS, rate-limiting, JSON helpers, auth hook"},{"latest":{"openbookregister":false},"version":"0.1.0+7d291211","requires":{"system":{}},"released":"2026-04-14","supports":{"openbookregister":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"API layer for DAW HTTP services -- CORS, rate-limiting, JSON helpers, auth hook"}],"fragjan-check-contains":[{"latest":{"fragjan":true},"version":"0.1.2+60af72cd","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.3"}},"tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern"},{"latest":{"fragjan":false},"version":"0.1.1+b61170f5","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.3"}},"tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern"},{"latest":{"fragjan":false},"version":"0.1.0+4e20f780","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-19","supports":{"fragjan":{"min":"0.1.3"}},"tier":"free","description":"fragjan primitive: check if a file contains or does not contain a pattern"}],"fragjan-check-linepattern":[{"latest":{"fragjan":true},"version":"0.1.1+09b9c01b","requires":{"system":{"lua":{"min":5.1}}},"released":"2026-05-26","supports":{"fragjan":{"min":"0.2.0"}},"tier":"free","description":"fragjan primitive: match pattern on a line, with optional line-level exclusion"}],"tax-calc":[{"latest":{"kaupapi":true,"steurjan":true,"stapul":true,"raidjan":true},"version":"0.1.1+ace89389","requires":{"system":[]},"released":"2026-05-01","supports":{"kaupapi":{"max":"<2.0.0","min":"0.1.0"},"steurjan":{"max":"<2.0.0","min":"0.1.0"},"stapul":{"max":"<2.0.0","min":"0.1.0"},"raidjan":{"max":"<2.0.0","min":"0.1.0"}},"tier":"free","description":"Decimal-accurate net/gross price calculation for DAW systems"},{"latest":{"steurjan":false},"version":"0.1.0+3097a54a","requires":{"system":[]},"released":"2026-05-01","supports":{"steurjan":{"max":"<2.0.0","min":"1.0.0"}},"tier":"free","description":"One-line description"}],"fragjan-check-linecount":[{"latest":{