Create a Module
The easiest way to contribute to the TinySystems ecosystem is to create your own module. A module is a Go program that packages one or more components into a Kubernetes operator.
Quick Start
- Use the example-module template repository
- Add your workspace Developer Key as a GitHub secret (
TINY_DEV_SECRET) — works as an org-level secret too, so all your module repos share it - Write your components
- Push a semver tag — GitHub Actions builds and publishes automatically
- Your module appears in your workspace, ready to install
For the full walkthrough, see Create Your Own Module.
How It Works
When you push a tag, the CI pipeline runs go run cmd/main.go tools build, which:
- Introspects all registered components and generates JSON schemas for their ports
- Publishes module metadata to the TinySystems platform
- Builds a container image and pushes it to the platform's registry
Your module then shows up in your workspace's module list and can be installed into any connected cluster.
Organization Setup
If you maintain multiple modules, add TINY_DEV_SECRET as a GitHub organization secret once. Every module repo in your org will pick it up — no per-repo setup needed.