Contributing

Help improve ds-start.

Contributions are welcome. This page covers the local workflow; the full guide lives in the GitHub repo.

Development Setup

1. Fork and clone

git clone https://github.com/<your-username>/dev-start.git
cd dev-start

2. Install dependencies

bun install

3. Build and verify

bun run build
bun run lint
bun run typecheck

Making Changes

1. Create a branch from main

git checkout -b feat/my-feature

2. Run quality gates before committing

bun run lint
bun run typecheck
bun run build

3. Commit with conventional commits

git commit -m "feat: add cool new feature"

4. Push and open a pull request

Commit Style

This project uses Conventional Commits enforced by commitlint.

feat:

New feature

fix:

Bug fix

docs:

Documentation only

refactor:

Code change that neither fixes a bug nor adds a feature

chore:

Tooling, CI, dependencies

Code Conventions

  • TypeScript strict mode — no any, no type assertions, no @ts-ignore
  • kebab-case for all files and directories
  • Named exports for helpers and utilities
  • Relative imports with .js extensions (ESM)
  • oxlint for linting — no eslint-disable comments

Changesets

If your PR changes user-facing behavior, add a changeset:

bunx changeset

Commit the generated changeset file with your PR.

For the full contributing guide including template changes and adding new modules, see CONTRIBUTING.md on GitHub.