Thank you for helping grow the InvoiceShelf extension ecosystem.
- Fork this repository and create a branch from
main. - Edit
extensions.json— add a new object underextensionsor update an existing entry (see docs/CATALOG.md). - Validate JSON (IDE or
jq empty extensions.json). - Open a PR with a clear title, e.g.
Add extension: my-slugorUpdate payments to 1.2.0. - Ensure
download_urlreturns HTTP 200 and a valid ZIP without authentication (verify in a browser or withcurl -I).
- Edit
templates.json(see docs/TEMPLATES.md). - Add
cover— a required HTTPS URL to a screenshot (store cards and InvoiceShelf validation). - Add
packages/pdf-templates/*.zipandpreviews/*.pngto this repo when hosting native or third-party packs here.
- Valid JSON; root object includes an
extensionsarray. - Required fields present;
slugunique;versionmatches the packaged release. -
download_urlis HTTPS, versioned, and publicly accessible. -
compatibility.min_version/max_versionalign with InvoiceShelf versions you support. -
repositorypoints to the canonical source (issue tracker, license). -
coverURL loads (required fortemplates.json; recommended forextensions.json). - No secrets, tokens, or private URLs in the manifest.
Open a discussion or issue on this repository, or ask on Discord.