sfpm

Contributing

Local development setup and contribution guidelines.

Issues and pull requests are welcome at github.com/b64hub/sfpm/issues.

Local development

pnpm install      # install workspace deps
pnpm build        # turbo build all packages
pnpm watch        # rebuild on change
pnpm test         # run vitest / mocha across the workspace
pnpm typecheck    # tsc -b across the workspace
pnpm lint         # eslint
pnpm format       # prettier

Repository layout

This is a pnpm + Turborepo monorepo:

PackagePurpose
@b64/sfpm-cliThe sfpm CLI (oclif).
@b64/sfpm-coreBuild/install orchestrators, artifact registry, lifecycle engine, project model.
packages/actionsGitHub Actions wrapping the same flows for CI.
packages/hooksPre/post-deploy hooks for tricky metadata.
packages/orgsScratch org and pool management.
packages/sfdmuSFDMU data builder/installer integration.

Contribution rules

Commits follow Conventional Commits (enforced by commitlint + Husky).

  1. Open an issue first for non-trivial changes.
  2. Use Conventional Commit messages (feat:, fix:, chore:, …).
  3. Run pnpm lint && pnpm typecheck && pnpm test before pushing.

License

MIT.

On this page