https://github.com/dp-labs/dora
The Ultimate Layer for on-chain Computing and Verification
https://github.com/dp-labs/dora
ai blockchain compiler computing evm llvm mlir verification wasm web3
Last synced: 11 months ago
JSON representation
The Ultimate Layer for on-chain Computing and Verification
- Host: GitHub
- URL: https://github.com/dp-labs/dora
- Owner: dp-labs
- License: apache-2.0
- Created: 2024-10-29T16:01:00.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-07T02:59:14.000Z (11 months ago)
- Last Synced: 2025-04-07T03:31:50.970Z (11 months ago)
- Topics: ai, blockchain, compiler, computing, evm, llvm, mlir, verification, wasm, web3
- Language: WebAssembly
- Homepage:
- Size: 18.2 MB
- Stars: 24
- Watchers: 0
- Forks: 6
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Dora: The Ultimate Layer for on-chain Computing and Verification
## Introduction
Dora is a modular machine layer designed to bring real-world computing use cases on-chain, featuring in-house ZK verification capabilities.
## Status
Dora is currently in the MVP stage, with support for EVM and WASM functionalities. It is actively under development and will soon be ready for production use.
## Why
Web3's programming and VM layers have attracted a growing developer community. Dora takes this a step further by introducing a next-gen blockchain programming and execution layer that addresses key needs:
- Extreme performance and lower costs: Optimized execution tailored for real-world on-chain use cases.
- Multi-language support and toolchain flexibility: Enabling a wide range of programming languages and toolchains, supporting EVM and WASM specifications within a single VM.
- Borderless on-chain use cases: Eliminating barriers to achieve seamless interoperability across a variety of on-chain use cases.
- Seamless integration with co-processors: Providing native support for collaboration with various co-processors, such as zkVM, for enhanced capabilities.
## Key Features in Early Stage
- **Super-fast EVM Spec Implementation**: Ultra-fast, EVM-compatible execution that integrates seamlessly with Ethereum clients, enabling a smooth adoption for developers and projects.
- **WASM Support and Interoperability**: Multi-language support through WASM bytecode, leveraging mature toolchains for development flexibility, while ensuring interoperability between diverse contracts.
- **Built-in Verification**: Enhances smart contract security with integrated zero-knowledge proof (ZKP) verification, boosting trust and reliability.
## Use Cases
VM is ideal for blockchain applications like:
- Micro-payments
- On-chain decentralized exchanges (DEXs)
- On-chain gaming
- On-chain AI inference
- Cross-chain protocols
## Examples
- Check out Dora EVM and WASM contract examples [here](./examples/).
- Check out Foundry, Hardhat and Rust toolchain examples [here](https://github.com/dp-labs/toolchain-examples) for Dora EVM and WASM.
## Benchmarks
Dora performed well in basic test cases. The benchmark tests and results are shown [here](./tests/bench/).
## Installation
Firstly, see the [developing guide](./docs/dev/guide.md) to install all build dependencies.
### Cargo
```shell
cargo install --git https://github.com/dp-labs/dora.git dora-cli
```
### Build from Source
In the `crates/dora-cli` folder and run
```shell
cargo build -r
```
Then you can find the binary `dora` in the `target/release` folder.
## How it Works
The Dora compiler is built on a unified intermediate representation(IR) layer tailored for blockchain applications, following a streamlined process to transform and optimize code into an ideal executable format. After thorough analysis and verification, the VM executes machine code generated from compiled native modules, which optimized for both main processors and co-processors. See [Tech design](./docs/design/tech.md) for more information.
## Roadmap
We are committed to continuous innovation, with key milestones including:
- Q4 2024: Launch the stable EVM version, complete with full test coverage and development tools.
- Q1 2025: Release the stable WASM version and interoperability with contracts written in Rust.
- Q2 2025: Introduce support for zkVM co-processors to enhance zero-knowledge proof capabilities.
- Q3 2025: SDKs and toolchains across multiple programming languages.
## Contributing
We welcome contributions to Dora! Whether you're a developer, a user with a bug report, or someone looking to improve our documentation, your involvement is valuable! See the [developing guide](./docs/dev/guide.md) for more information.
## Help Wanted
We are actively developing Dora and invite interested developers to join us. We need help with the following, see the issue list for more information.
## Contact
Join our public [Telegram group](https://t.me/+_OlJfYAc9QM2ODVl)