0glabs / 0g-storage-node

Apache License 2.0
75 stars 77 forks source link

0G Storage

Overview

0G Storage is the storage layer for the ZeroGravity data availability (DA) system. The 0G Storage layer holds three important features:

To dive deep into the technical details, continue reading 0G Storage Spec.

Integration

We provide a SDK for users to easily integrate 0G Storage in their applications with the following features:

Deployment

Please refer to Deployment page for detailed steps to compile and start a 0G Storage node.

Test

Prerequisites

Dependencies

Python test framework will launch blockchain fullnodes at local for storage node to interact with. There are 2 kinds of fullnodes supported:

For Conflux eSpace node, the test framework will automatically compile the binary at runtime, and copy the binary to tests/tmp folder. For BSC node, the test framework will automatically download the latest version binary from github to tests/tmp folder.

Alternatively, you could also manually copy specific version binaries (conflux or geth) to the tests/tmp folder. Note, do NOT copy released conflux binary on github, since block height of some CIPs are hardcoded.

For testing, it's also dependent on the following repos:

Run Tests

Go to the tests folder and run the following command to run all tests:

python test_all.py

or, run any single test, e.g.

python sync_test.py

Contributing

To make contributions to the project, please follow the guidelines here.