Recent changes
Wednesday November 04 2026
-
File checksums (share/filelist.md5) Updated Markdown page
When a theme ships share/filelist.md5, the administration's file consistency check compares installed files against it; how to refresh the checksums in the same release, and what happens when you forget.
-
The first push and the default branch Updated Markdown page
Push a theme for the first time with main as its default branch, protect main from force pushes, and decide how work branches and pull requests flow into it.
-
The GFDL for theme documentation Updated Markdown page
License a theme's documentation under the GNU Free Documentation License 1.3 like the Exponential documentation - the notice to use, what it allows, and when a Creative Commons license fits better. Not legal advice.
-
GitHub releases Updated Markdown page
Create a GitHub release for a pushed tag with gh release create - title, notes from the changelog, latest flag - check it, and know what a release adds to a tag.
-
The GPL for theme code Updated Markdown page
Why most themes for Exponential are licensed GPL-2.0-or-later, what the GPL asks of you and of people who share your theme, the difference between "only" and "or later", and how to apply it. Not legal advice.
-
Issue tracker and support channel Updated Markdown page
Tell users where to ask and where to report - GitHub issues for bugs, a forum or chat for questions, a private address for security - with composer.json support fields, issue templates and response habits.
-
Keeping a CHANGELOG.md Updated Markdown page
Maintain a theme's CHANGELOG.md release by release - collect entries from the git log since the last tag, sort them by prefix, add the heading in the release commit, and keep the file and the GitHub releases consistent.
-
Licensing choices: an overview Updated Markdown page
The license decisions a theme author makes - code, documentation, images and third-party parts - the licenses Exponential and its published themes use, and where each choice is explained. Not legal advice.
-
Listing a theme on projects.exponential.earth Updated Markdown page
What projects.exponential.earth, the Exponential community forge, offers a theme author - project pages with news, downloads and forums, browsing by type and organization, RSS feeds - and the steps to list a theme there.
-
After .9 comes .10: only the last position counts Updated Markdown page
A version at .9 goes to .10, not to the next higher position - why that is safe for Composer, Packagist and GitHub, and why positions above the last move only by decision.
-
Keeping Packagist up to date automatically Updated Markdown page
Make Packagist read every new tag as soon as it is pushed - through the GitHub integration or a webhook - and check that the hook works after a release.
-
A README that explains and sells Updated Markdown page
Turn a theme's README into the page that convinces - the first screen, a screenshot, proof of quality (accessibility, CSP, dark mode), honest requirements, a two-minute install and clear support - without claims you…
-
Repository name, description and topics Updated Markdown page
Choose a repository name, a one-line description and GitHub topics that let people find a theme, with the choices the published Exponential themes made.
-
Screenshot checklist Updated Markdown page
A checklist to run over every screenshot before it is published - current version, honest look, sizes, file size, alt text, and no personal or private data.
-
Screenshots for a theme Updated Markdown page
Which screenshots a theme needs - front page, an article, a list, light and dark mode, a phone and a 200% zoom view - how to take them reproducibly, where to keep them, and what must never appear in them.
-
A security policy for a theme Updated Markdown page
Write a SECURITY.md for a theme - supported versions, a private way to report, what to include, what reporters can expect - modeled on the policy of the Exponential repository.
-
Sorting tags correctly Updated Markdown page
List the tags of a theme in version order, not name order - git tag --sort=version:refname, sort -V and git describe - with the mistake a plain sort makes and how to fix release scripts.
-
Packagist shows an old version Updated Markdown page
Diagnose why Packagist or composer require does not offer the newest release of a theme - a missing or failing hook, a tag Packagist could not read, a composer.json error, or a cached client - and fix each.
-
Submitting a theme to Packagist Updated Markdown page
Publish a theme as a Composer package on Packagist - prerequisites, the Submit page, checking the package page, and testing composer require from a clean installation.
-
Third-party fonts, icons and libraries Updated Markdown page
Check the license of every font, icon set and JavaScript or CSS library a theme ships, one by one - what to look for, where the notices go, and why self-hosting is preferred over CDNs. Not legal advice.