
Example Module Demo
A minimal KernelSU module that shows how to publish a module to the KernelSU Modules. It installs nothing and does nothing on the device — copy this repository as a starting point for your own module.
Layout
| Path | Purpose |
|---|---|
module/ |
The module itself; its contents become the root of the release ZIP |
module/module.prop |
id, version and versionCode — the only source of version information |
module.yaml |
KernelSU Modules display metadata (name, summary, icon, tags, …) |
README.md |
This page — also the module's detail page, referenced from module.yaml |
assets/icon.png |
Icon (generated by node scripts/gen-icon.mjs) |
.github/workflows/release.yml |
Publishes an immutable release when a v* tag is pushed |
Releasing a new version
-
Enable Settings → General → Releases → Enable release immutability (once).
-
Bump
versionandversionCodeinmodule/module.prop(versionCode must increase). -
Commit, then tag and push:
git tag v1.0.1 && git push origin v1.0.1 -
The workflow zips
module/, prechecks it with the KernelSU Modules validator and publishesexample_module_demo-<versionCode>-<version>.zipas an immutable release. Tags containing-(e.g.v1.1.0-rc1) are published as prereleases.
KernelSU Modules picks up the release automatically within minutes. See the developer documentation for details.