Run it locally
Run GAVEL on your machine with the built-in fake PayPal. No PayPal account needed.
Needs Node 22 and npm. No PayPal account is needed for the default run.
Fake PayPalnpm ci
PUBLIC_URL=http://localhost:8080 TOKEN_SECRET="$(openssl rand -hex 16)" ADMIN_KEY="$(openssl rand -hex 12)" \
PAYMENTS=fake PAYPAL_ENV=sandbox npm start -w @gavel/serverWith PAYMENTS=fake the server uses the built-in and needs no network access. Production mode refuses fake payments. All server settings are in configuration. The two openssl commands generate throwaway values that meet the server minimums (32 bytes and 24 characters); any strings of that length work. To run the web app against this server, copy packages/web/.env.example to packages/web/.env.local and run npm run dev -w @gavel/web.
Tests and checks
Every pull request runs these in GitHub Actions. The same commands work locally on a machine with room for them.
| Command | What it runs |
|---|---|
npm test | Unit tests for every package |
npm run test:property | Property tests; each run prints its seed |
npm run typecheck | Strict TypeScript across the workspace |
npm run lint | ESLint with zero warnings allowed |
Last updated on