Skip to content

Latest commit

 

History

History
44 lines (31 loc) · 1.36 KB

File metadata and controls

44 lines (31 loc) · 1.36 KB

Contributing to ax

Thanks for helping improve ax, the Ora CLI.

Setup

Requires Node >= 22.4 and pnpm (version pinned in the packageManager field of package.json — corepack enable picks it up).

pnpm install

Working on a change

pnpm test          # vitest, watch mode
pnpm lint          # biome
pnpm typecheck     # tsc --noEmit
pnpm build         # bundle to dist/
pnpm smoke         # run the bundled binary the way a user would
pnpm verify:pack   # prove the npm tarball would be publishable

CI runs lint, typecheck, tests on Node 22/24, build, smoke, and the pack check on every PR. All of it must be green before merge.

Commit messages and PR titles

This repo squash-merges, so your PR title becomes the commit message on main and must follow Conventional Commits (feat: …, fix: …, chore(scope): …). CI lints the title on every PR; individual commit messages on your branch are yours to shape freely.

Contract types

src/contract/ is generated from the production Ora OpenAPI spec — never edit it by hand. If the scheduled contract-drift job is red, run pnpm contract:gen, review the diff, and commit the result.

Releases

Maintainers release by merging the release-please PR (see RELEASING.md). Contributors never need to bump versions or publish.