Compiler and runner for the Cairo language
Project description
Introduction
Cairo is a programming language for writing provable programs.
Documentation
The Cairo documentation consists of two parts: "Hello Cairo" and "How Cairo Works?". Both parts can be found in https://cairo-lang.org/docs/.
We recommend starting from Setting up the environment.
Installation instructions
You should be able to download the python package zip file directly from
github
and install it using pip
.
See Setting up the environment.
However, if you want to build it yourself, you can build it from the git repository. It is recommended to run the build inside a docker (as explained below), since it guarantees that all the dependencies are installed. Alternatively, you can try following the commands in the docker file.
Building using the dockerfile
Note: This section is relevant only if you wish to build the Cairo python-package yourself, rather than downloading it.
The root directory holds a dedicated Dockerfile, which automatically builds the package and runs the unit tests on a simulated Ubuntu 18.04 environment. You should have docker installed (see https://docs.docker.com/get-docker/).
Clone the repository and initialize the git submodules using:
> git clone git@github.com:starkware-libs/cairo-lang.git
> cd cairo-lang
Build the docker image:
> docker build --tag cairo .
If everything works, you should see
Successfully tagged cairo:latest
Once the docker image is built, you can fetch the python package zip file using:
> container_id=$(docker create cairo)
> docker cp ${container_id}:/app/cairo-lang-0.13.4.zip .
> docker rm -v ${container_id}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cairo-lang-0.13.5.zip
.
File metadata
- Download URL: cairo-lang-0.13.5.zip
- Upload date:
- Size: 11.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50e187d11f14af5c4e2401b143dd30f81e24f73e85f9831562b3a5c197b8601f |
|
MD5 | a9aba754705e2902780c4d316423887f |
|
BLAKE2b-256 | 7439de826b2fdbfc96388bc49ba69300f3d13b04ee8c143ddaefa8ec04b53711 |