Thanks for your interest in helping! Framework-kit is still experimental, and we value contributions that respect the community and keep the codebase healthy.
- Be respectful and welcoming. Harassment or discrimination of any kind is not tolerated.
- Act transparently. Disclose conflicts of interest and avoid sharing sensitive data.
- Contribute original work or clearly mark external sources with proper attribution.
- Node.js ≥ 24 (LTS) and pnpm ≥ 10.20.0.
- Clone the repo and install dependencies with
pnpm install. - Familiarity with Turborepo, Biome, and Vitest helps—see
README.mdfor local workflows.
- Create a feature branch from
main. - Run
pnpm format,pnpm lint,pnpm typecheck, andpnpm testbefore submitting.- A Husky pre-commit hook automatically runs
pnpm exec biome check --staged --no-errors-on-unmatchedso commits only land when Biome formatting and lint checks pass.
- A Husky pre-commit hook automatically runs
- Keep changes focused; open separate PRs for unrelated fixes.
- Write tests when adding or modifying functionality.
- Open a pull request with a clear summary and note any follow-up work.
- Export
ActionNameParameters/ActionNameReturnTypefor public actions andUseHookNameParameters/UseHookNameReturnTypefor hooks (usevoidwhen a hook takes no arguments). - Prefer
XxxOptionsfor optional bags,XxxConfigfor required configuration, andSerializableXxxStatefor persisted shapes. - Prefer canonical names; only add temporary aliases when absolutely necessary, and remove them once callers can migrate.
- Keep SWR options under a
swrnamespace on hook parameters and align defaults with SWR v2 unless a hook documents otherwise.
- Any change that impacts a published package (e.g.,
@solana/client,@solana/react-hooks) must include a Changeset entry. Runpnpm changesetand follow the prompts to record the bump type and changelog note. - Multiple commits can reference the same changeset; it only needs to exist once in the PR.
- When the PR merges, the automated release workflow will collect these entries, open a "Version Packages" PR, and eventually publish the new versions to npm.
- Follow conventional commits when possible (e.g.,
feat:,fix:,docs:). - Ensure CI passes; the Biome workflow enforces linting on every PR.
- Include screenshots or recordings for UI tweaks when practical.
- Use the issue tracker for bugs or feature requests.
- Provide reproduction steps, expected vs. actual behavior, and environment details.
- Be patient and courteous—maintainers review issues and PRs as time allows.
We appreciate your contribution to the Framework-kit ecosystem!