Contributing to OpenPost
August 13, 2026 ยท View on GitHub
OpenPost uses a project-owned Devenv environment so local and CI commands stay aligned.
git clone https://github.com/getopenpost/openpost.git
cd openpost
direnv allow
devenv shell -- setup
bun run verify
Use Conventional Commits because release versions are derived from commit intent:
fix:and maintenance changes produce a patch release.feat:produces a minor release.!or aBREAKING CHANGE:footer produces a major release.
Before opening a pull request:
- Run the smallest relevant root gate while working. The pre-push hook checks changed-file syntax and formatting; use
bun run release -- checkfor a bounded broad check and reservebun run verifyfor high-risk changes that need local production builds. - Add notable behavior, migration, and operator changes to the canonical
CHANGELOG.mdunderUnreleased; the public changelog and release notes are generated from it. - Reuse the shared Shadcn-svelte form controls across app and marketing UI.
bun run check -- ui-consistencyrejects visible native form controls outside those primitives. - Include migration notes for database changes and screenshots for visible UI changes.
- Never commit credentials, provider tokens, local dotenv files, or production data.
Read the full development setup, architecture guide, testing guide, and release policy. Repository-specific rules live in AGENTS.md.