Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kkrt-labs/kakarot-ssj

Kakarot zkEVM - rewrite in the latest version of Cairo
https://github.com/kkrt-labs/kakarot-ssj

cairo-lang starknet zero-knowledge-proofs zkevm

Last synced: about 2 months ago
JSON representation

Kakarot zkEVM - rewrite in the latest version of Cairo

Awesome Lists containing this project

README

        






Kakarot, the zkEVM written in Cairo.




![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/kkrt-labs/kakarot-ssj/test.yml?branch=main)
![GitHub](https://img.shields.io/github/license/kkrt-labs/kakarot-ssj?style=flat-square&logo=github)
![GitHub contributors](https://img.shields.io/github/contributors/kkrt-labs/kakarot-ssj?logo=github&style=flat-square)
![GitHub top language](https://img.shields.io/github/languages/top/kkrt-labs/kakarot-ssj?style=flat-square)
[![Telegram](https://img.shields.io/badge/telegram-Kakarot-yellow.svg?logo=telegram)](https://t.me/KakarotZkEvm)
![Contributions welcome](https://img.shields.io/badge/contributions-welcome-orange.svg)
[![Read FAQ](https://img.shields.io/badge/Ask%20Question-Read%20FAQ-000000)](https://www.newton.so/view?tags=kakarot)
![GitHub Repo stars](https://img.shields.io/github/stars/kkrt-labs/kakarot-ssj?style=social)
[![Twitter Follow](https://img.shields.io/twitter/follow/KakarotZkEvm?style=social)](https://x.com/KakarotZkEvm)

Table of Contents

- [About](#about)
- [Getting Started](#getting-started)
- [Installation](#installation)
- [Usage](#usage)
- [Build](#build)
- [Test](#test)
- [Format](#format)
- [Roadmap](#roadmap)
- [Support](#support)
- [Project assistance](#project-assistance)
- [Contributing](#contributing)
- [Authors \& contributors](#authors--contributors)
- [Security](#security)
- [License](#license)
- [Acknowledgements](#acknowledgements)
- [Contributors ✨](#contributors-)

---

## About

Kakarot is an (zk)-Ethereum Virtual Machine implementation written in Cairo.
Kakarot is Ethereum compatible, i.e. all existing smart contracts, developer
tools and wallets work out-of-the-box on Kakarot. It's been open source from day
one. Soon available on Starknet L2 and Appchains.

🚧 It is a work in progress, and it is not ready for production.

## Getting Started

This repository is a Cairo rewrite of
[the CairoZero version of Kakarot zkEVM](https://github.com/kkrt-labs/kakarot).

### Installation

- Install [Scarb](https://docs.swmansion.com/scarb). To make sure your version
always matches the one used by Kakarot, you can install Scarb
[via asdf](https://docs.swmansion.com/scarb/download#install-via-asdf).

- Install
[Starknet Foundry](https://foundry-rs.github.io/starknet-foundry/getting-started/installation.html?highlight=asdf#installation-via-asdf).
We also recommend installing it via asdf.

- Install the
[Cairo Profiler](https://github.com/software-mansion/cairo-profiler) to
profile your Cairo code.

- Install [Bun](https://bun.sh/docs/installation) to run the JavaScript scripts.

- [Fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) the
repository and clone your fork
(`git clone https://github.com//kakarot-ssj`)

- Run `make install` to install the git hooks.
- Add your environment variables to `.env` (see `.env.example` for an example).
- Get your Github token [here](https://github.com/settings/tokens?type=beta)

## Usage

### Build

```bash
scarb build
```

### Test

```bash
scarb test
```

### Format

The project uses [trunk](https://trunk.io/) for everything except cairo files. If you
don't have it installed already, you can do:

```bash
curl https://get.trunk.io -fsSL | bash
```

then

```bash
trunk check --fix
```

VS Code users, don't miss the
[VS Code trunk plugin](https://marketplace.visualstudio.com/items?itemName=Trunk.io).

For cairo files, run:

```bash
scarb fmt
```

## Roadmap

See the [open issues](https://github.com/kkrt-labs/kakarot-ssj/issues) for a
list of proposed features (and known issues).

- [Top Feature Requests](https://github.com/kkrt-labs/kakarot-ssj/issues?q=label%3Aenhancement+is%3Aopen+sort%3Areactions-%2B1-desc)
(Add your votes using the πŸ‘ reaction)
- [Top Bugs](https://github.com/kkrt-labs/kakarot-ssj/issues?q=is%3Aissue+is%3Aopen+label%3Abug+sort%3Areactions-%2B1-desc)
(Add your votes using the πŸ‘ reaction)
- [Newest Bugs](https://github.com/kkrt-labs/kakarot-ssj/issues?q=is%3Aopen+is%3Aissue+label%3Abug)

## Support

Reach out to the maintainer at one of the following places:

- [GitHub Discussions](https://github.com/kkrt-labs/kakarot-ssj/discussions)
- [Telegram group](https://t.me/KakarotZkEvm)

## Project assistance

If you want to say **thank you** or/and support active development of Kakarot:

- Add a [GitHub Star](https://github.com/kkrt-labs/kakarot-ssj) to the project.
- Tweet about [Kakarot](https://twitter.com/KakarotZkEvm).
- Write interesting articles about the project on [Dev.to](https://dev.to/),
[Medium](https://medium.com/), [Mirror](https://mirror.xyz/) or your personal
blog.

Together, we can make Kakarot **better**!

## Contributing

First off, thanks for taking the time to contribute! Contributions are what make
the open-source community such an amazing place to learn, inspire, and create.
Any contribution you make will benefit everybody else and is **greatly
appreciated**.

Please read [our contribution guidelines](docs/CONTRIBUTING.md), and thank you
for being involved!

## Authors & contributors

For a full list of all authors and contributors, see
[the contributors page](https://github.com/kkrt-labs/kakarot-ssj/contributors).

## Security

Kakarot follows good practices of security, but 100% security cannot be assured.
Kakarot is provided **"as is"** without any **warranty**. Use at your own risk.

_For more information and to report security issues, please refer to our
[security documentation](docs/SECURITY.md)._

## License

This project is licensed under the **MIT license**.

See [LICENSE](LICENSE) for more information.

## Acknowledgements

## Contributors ✨

Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):



Abdel @ StarkWare
Abdel @ StarkWare

πŸ’»
johann bestowrous
johann bestowrous

πŸ’»
Elias Tazartes
Elias Tazartes

πŸ‘€ βœ… πŸ“’
Mathieu
Mathieu

πŸ’» ⚠️ πŸ“–
khaeljy
khaeljy

πŸ’»
ClΓ©ment Walter
ClΓ©ment Walter

πŸ’»
Lucas @ StarkWare
Lucas @ StarkWare

πŸ’»


lambda-0x
lambda-0x

πŸ’»
danilowhk
danilowhk

πŸ’»
Tristan
Tristan

πŸ’»
Quentash
Quentash

πŸ’»
ftupas
ftupas

πŸ’»
Aniket Prajapati
Aniket Prajapati

πŸ’»
Daniel Bejarano
Daniel Bejarano

πŸ’»


Noeljarillo
Noeljarillo

πŸ’»
Thomas Butler
Thomas Butler

πŸ’»
Ammar Arif
Ammar Arif

πŸ“–
greged93
greged93

πŸ’»
Charlotte
Charlotte

πŸ’»
akhercha
akhercha

πŸ’»
Alexandro T. Netto
Alexandro T. Netto

πŸ’»


tedison
tedison

πŸ’»
Pia
Pia

πŸ’»
glihm
glihm

πŸ’»






Add your contributions



This project follows the
[all-contributors](https://github.com/all-contributors/all-contributors)
specification. Contributions of any kind welcome!