Contributing
Guidelines for contributing to exo-place projects.
Development Setup
Projects use Bun as the runtime:
bash
bun install
bun run devFor reproducible environments, projects include flake.nix:
bash
nix develop
# or with direnv: direnv allowCommit Conventions
We use Conventional Commits:
type(scope): descriptionTypes:
feat: New featurefix: Bug fixdocs: Documentation onlyrefactor: Code change that neither fixes a bug nor adds a featuretest: Adding or updating testschore: Maintenance tasks
Code Style
- Use Bun as the runtime
- TypeScript with strict mode
- oxlint for linting, tsgo for type checking
- Prefer functional patterns
- Types are required, no
any
Pull Requests
- Fork the repository
- Create a feature branch from
master - Make your changes with conventional commits
- Ensure checks pass:
bun run lint && bun run check:types - Open a PR with a clear description
Documentation
Each project has a docs/ directory with VitePress:
bash
cd docs
bun install
bun run devQuestions?
Open an issue in the relevant repository.