Contributing
Thanks for helping improve Skaff! The monorepo hosts the CLI, web app, shared libraries, and documentation. Start by reading the project README for installation commands and release context.
Local setup
- Clone the repository and install dependencies:
bun install
. - Build shared packages so apps have fresh artefacts:
bun run turbo run build
. - Run formatters and tests before committing:
bun run format
andbun test
(or package-level scripts). - Work on a feature branch and open a pull request against
main
once checks pass.
Run the CLI against local sources with node apps/cli/bin/dev.js <command>
and launch the web UI with bun --filter apps/web dev
when you need live reload.
Documentation changes
Docs live under packages/docs
. Preview them locally with:
cd packages/docs
bun install
bun run dev
Keep pages concise, prefer task-oriented headings, and run bunx prettier --check "packages/docs/src/**/*.mdx"
before committing.
Release overview
Maintainers coordinate releases when features land:
- Merge changes into
main
with passing CI. - Bump versions across packages and tag the release (e.g.
v0.x.y
). - GitHub Actions publishes npm packages, CLI binaries, the Docker image, and the updated docs site.
Discuss patch releases or larger roadmap topics in GitHub Discussions or Discord.