Rooch is a Modular Fully on-chain Application Container, with Move language.
Usage
- RoochNetwork(Multi-Chain Modular Layer2): Rooch(Execution) + Multi-Chain(Settlement) + Ethereum(Arbitration) + DA
- X-Chain Rollup: Rooch(Execution) + X-Chain(Settlement + Arbitration) + DA
- Sovereign Rollup: Rooch + DA
Developer Network Information
Please refer to Connect to Developer Test Network for more information.
MoveStd & MoveosStd & RoochFramework documentation
Please refer to Rooch's built-in library for more information.
Getting Started
-
Building from source:
cargo build && cp target/debug/rooch ~/.cargo/bin/
-
initialize Rooch config:
rooch init
-
Creating a new Move project:
rooch move new my_move_project
-
Building the Move project:
cd my_move_project && rooch move build
-
Starting the server
rooch server start
RUST_LOG=debug rooch server start
for debugging information
- You can directly use the devnet and skip this step.
-
Publishing the Move project
rooch move publish -p my_move_project
Experience Rooch through examples.
Deep Dive into Rooch
Storage Abstraction
- [Docs](https://rooch.network/learn/core-concepts/objects/storage-abstraction)
- Overview:
![Storage Abstraction](./docs/website/public/docs/rooch-design-storage-abstraction.svg)
State DB
- Overview:
![State DB](./docs/website/public/docs/rooch-design-statedb.svg)
Transaction Flow
- [Docs](https://rooch.network/learn/core-concepts/transaction/transaction-flow)
- Overview:
![Rooch Transaction Flow](./docs/website/public/docs/rooch-design-transaction-flow-functional-perspective.svg)
Components
- MoveOS: MoveOS is a standalone Move runtime environment based on MoveVM. It provides Move execution environment for Rooch.
Contributing
Rooch is an open source project, you can help with ideas, code, or documentation, we appreciate any efforts that help us to make the project better!
To get started with contributing:
The First Good Pull Request
Community
License
Current Rooch code is released under Apache 2.0.
When contributing to a Rooch feature, you can find the relevant license in the comments at the top of each file.