No description
  • Python 60.8%
  • Cairo 37.1%
  • Solidity 2.1%
Find a file
2022-11-22 11:39:24 +04:00
.github Regenesis 2022-10-04 10:18:34 +01:00
contracts/ethereum Add Protostar and rewrote some unit tests 2022-10-06 19:24:18 +04:00
lib ️ format Cairo files 2022-10-17 11:41:07 +04:00
scripts M️igrate to protostar v0.7.0 2022-11-17 16:17:41 +04:00
src Use send_message_to_l2 cheatcode, legacy tests cleanup 2022-10-23 18:53:41 +04:00
tests Use send_message_to_l2 cheatcode, legacy tests cleanup 2022-10-23 18:53:41 +04:00
.gitignore Use send_message_to_l2 cheatcode, legacy tests cleanup 2022-10-23 18:53:41 +04:00
.gitmodules Update submodule path 2022-10-19 12:42:19 +04:00
brownie-config.yaml Regenesis 2022-10-04 10:18:34 +01:00
LICENSE Regenesis 2022-10-04 10:18:34 +01:00
protostar.toml Add cairo-path to protostar.toml 2022-11-22 11:39:24 +04:00
README.md Add cairo-path to protostar.toml 2022-11-22 11:39:24 +04:00

Starknet-based State Verifier

Herodotus will allow anyone to trustlessly prove any past or current headers, state, and storage values of L1 contracts to other L2 contracts.

Architecture

Herodotus is built out of the following components:

  • L1 messaging contracts
  • L2 contract receiving L1 messages
  • L2 contract storing and processing L1 block headers
  • Facts registry which stores the proven facts

alt text Storage Verifier Flow diagram

Testing

In order to run the tests, please make sure to have a python 3.7 virtual environment.

Herodotus API

Herodotus has built an API which allows projects to take advantage of Herodotus in a much simpler manner.

Please note: Herodotus is currently not ready for most production applications!

This is because the block step limit on Starknet is too low and large requests may fail if they require too many steps. We are in contact with Starkware and are awaiting for them to increase the step limit in the near future, at which time we will complete e2e testing and officially launch Herodotus.

Check out our API Docs to see all of our currently supported endpoints!

If you are interested in building with the Herodotus API, we can give you API access for testing purposes prior to the official launch. Please send any inquiries to: dev@herodotus.dev

Contribute

There are countless use cases for the storage verifier and we are excited to hear what the community wants to build with it! Please reach out to dev@herodotus.dev for any partnership, sponsorship, or other matters.

Protostar: Getting Started

Install protostar (for Linux and Mac):

curl -L https://raw.githubusercontent.com/software-mansion/protostar/master/install.sh | bash
  • Restart the terminal.
  • Run protostar -v to check Protostar and cairo-lang version.

To install dependencies:

 protostar install

Building and running tests

 protostar build

To run the tests:

 protostar test tests/