Resources / Developers / Publish
Publish a quill
A quill is published on GitHub. Every Cloudmorrow server reads the Quill Catalog there, and so does this site: /quills lists what the catalog pins.
- Start from the template. GitHub's Use this template on Cloudmorrow/quill-template, or
cm quill new <id>. It carries the checks, the tests and the release workflow. - Release it. When
cm quill check,cm quill testandcm quill test --sandboxpass: push a tag (v1.0.0, the same asversioninquill.toml), publish a release on github.com, or run the release workflow from your repository's Actions tab. It checks and tests once more, and publishes the release. - The first time, open a pull request on Cloudmorrow/quill-catalog adding one block to
catalog.toml:
The check on the pull request fetches every quill at its release and checks it against the foundational datamodels, the way a server does before installing one. Somebody at Cloudmorrow reads your quill at that release and merges the pull request, or says what is in the way. Merged, it is on every server's list and on this site within the hour.[[quills]] id = "plants" name = "Plants" summary = "Your plants, and when you last watered each." repo = "https://github.com/you/quill-plants" ref = "v1.0.0" category = "home" publisher = "you" - After that, just release. Within fifteen minutes the catalog's releases workflow opens the pull request for you, with the check result and the install sheet, what a server shows before installing, in its body. Cloudmorrow merges it, or closes it with a word on why. You may open that pull request yourself; the result is the same. Until it is merged, servers keep installing the release the catalog pins.
Cloudmorrow's own quills go the same way, without the review: a release of a github.com/Cloudmorrow/quill-* repository is committed to the catalog by the same workflow. Every quill in the catalog is free and open source.