AnchorKit is an open-source project under stellar-commons-labs. We welcome contributions via
GitHub issues and pull requests, including those tracked by GrantFox OSS campaigns.
By participating you agree to the CODE_OF_CONDUCT.md. Keep discussions technical, constructive, and respectful.
- Issues labelled
good first issueare intended for new contributors. - Issues labelled
expertrequire Stellar or Soroban domain knowledge. GrantFox OSS+Maybe Rewarded+Official Campaign | FWC26are issues participating in the GrantFox campaign. See GRANTFOX_WORKFLOW.md.
- Find an issue, or open a new one following the ISSUE_STANDARD.md.
- Comment on the issue to apply. Wait for an assignment before starting work.
- Fork the repo, create a branch, run
pnpm install. - Implement, add tests, update docs if needed.
- Run
pnpm lint && pnpm typecheck && pnpm test && pnpm contract:testlocally. - Open a PR referencing the issue number (e.g.
Closes #42). - Respond to maintainer review and update your branch.
- Use branches:
feat/<short-slug>,fix/<short-slug>,docs/<short-slug>,chore/<short-slug>. - Keep commits small and rebased on
main. One PR should close one issue scope when possible. - PR title should summarise the change; the body should reference the issue, explain design choices, and list any risks.
- For any TypeScript utility change: add or update a Vitest test under
packages/*/test/. - For any contract state transition change: add a Rust test under
contracts/treasury-escrow/src/test.rs. - For UI-only changes: add a short note on how you tested manually.
- If you add or remove a public package API, update the relevant docs under
/docs(*.md). - If you add a new page to the dashboard, add a short paragraph in the dashboard overview doc and link to the source.
- GitHub Discussions (if enabled) for questions.
- Comments on the issue you are assigned to for implementation questions.
Maintainers will try to respond within 3 working days. We prioritise assigned contributors over drive-by PRs that have no linked issue.