Skip to main content

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.14.0.zip .
> docker rm -v ${container_id}

Metadata

Release files for cairo-lang 0.14.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cairo-lang 0.14.0.1
File Size Uploaded
cairo-lang-0.14.0.1.zip 11.3 MB Details

Release files / cairo-lang-0.14.0.1.zip

Download URL cairo-lang-0.14.0.1.zip
Size 11.3 MB
Tags Source
SHA-256 checksum
How to use checksums
d53473245f8d0d7d62d77ad5c1715959f61ce128bb369e8e7662040aabed98df
BLAKE2b-256 checksum
How to use checksums
3a767edf7675b6b3eca77aa304a0ff5bba045a351716a72b0f2a892117ca4838
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.5

Release history Release notifications | RSS feed

This release

0.14.0.1 This release

1 release file

0.14.0

1 release file

0.13.5

1 release file

0.13.3

1 release file

0.13.2

1 release file

0.13.1

1 release file

0.13.0

1 release file

0.12.3

1 release file

0.12.2

1 release file

0.12.1

1 release file

0.12.0

1 release file

0.11.2

1 release file

0.11.1

1 release file

0.11.0

1 release file

0.10.3

1 release file

0.10.2

1 release file

0.10.1

1 release file

0.10.0

1 release file

0.9.1

1 release file

0.9.0

1 release file

0.8.2.1

1 release file

0.8.2

1 release file

0.8.1

1 release file

0.8.0

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.2

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.0

1 release file

0.0.3

1 release file

0.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page