Contributions are welcome. For new features, please open an issue to discuss first.
We use Conventional Commits. User-facing changes should include at least one fix:
or feat:
commit for release notes. Other conventions like docs:
or test:
are optional but helpful.
To set up the project locally:
-
Install Node.js: Download from nodejs.org.
-
Install Python 3.12+.
-
Install Puya:
pipx install puyapy --python 3.12.6
-
Install AlgoKit CLI: Follow the guide from Algokit.
-
Start localnet:
algokit localnet start # or `algokit localnet reset --update` to update localnet docker images
-
Install npm dependencies:
npm install
-
Run tests:
npm test
Here are some common commands you will use with npm:
- Generate API reference documentation
npm run script:documentation
- Fix linting errors
npm run lint:fix
- Build a distribution locally
npm run build
- Compile all contracts used by tests for debugging
npm run script:refresh-test-artifacts
- Compile all example contracts for debugging
npm run script:compile-examples