Skip to content

Protostar is a toolchain for developing and testing with Cairo contracts for StarkNet

License

Notifications You must be signed in to change notification settings

ca11ab1e/protostar

 
 

Repository files navigation

protostar-logo protostar-logo

StarkNet smart contract development toolchain


Table of contents

About

Protostar manages your dependencies, compiles your project, and runs tests.

Documentation

https://docs.swmansion.com/protostar/

Installation

To install the tool, run:

curl -L https://raw.githubusercontent.com/software-mansion/protostar/master/install.sh | bash

Development

Requirements

Setting up environment

  1. Install Python version management tool: pyenv or asdf
  2. Install Python 3.7.12 using the Python version management tool and activate that version
  3. Clone this repository
  4. Verify the active Python version: python -V
  5. Create Python virtual environment in the project directory: python -m venv .venv
  6. Activate environment: source .venv/bin/activate
  7. Install Poetry — a dependency manager: pip install poetry
  8. Install project dependencies: poetry install
  9. Verify the setup by running tests: poe test

Git hooks

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

Updating website/docs

Please read website/README.md.

Deployment

$ poe deploy
Current Protostar version: 0.1.0
Provide the new Protostar version:

About

Protostar is a toolchain for developing and testing with Cairo contracts for StarkNet

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 81.9%
  • Cairo 15.0%
  • TypeScript 1.3%
  • Other 1.8%