Protostar manages your dependencies, compiles your project, and runs tests.
https://docs.swmansion.com/protostar/
To install the tool, run:
curl -L https://raw.githubusercontent.com/software-mansion/protostar/master/install.sh | bash
- good knowledge of Python
- good knowledge of pytest
- basic knowledge of Cairo and StarkNet
- basic knowledge of mypy
- Install Python version management tool: pyenv or asdf
- Install
Python 3.7.12
using the Python version management tool and activate that version - Clone this repository
- Verify the active Python version:
python -V
- Create Python virtual environment in the project directory:
python -m venv .venv
- Activate environment:
source .venv/bin/activate
- Install Poetry — a dependency manager:
pip install poetry
- Install project dependencies:
poetry install
- Verify the setup by running tests:
poe test
Run the following snippet to enable lint checks and automatic formatting before commit/push.
cp pre-push ./.git/hooks/
cp pre-commit ./.git/hooks/
chmod +x ./.git/hooks/pre-commit
chmod +x ./.git/hooks/pre-push
Please read website/README.md.
$ poe deploy
Current Protostar version: 0.1.0
Provide the new Protostar version: