Crates.io | mina_mesh |
lib.rs | mina_mesh |
version | 0.1.0-beta.2 |
source | src |
created_at | 2024-10-04 15:58:38.05137 |
updated_at | 2024-11-22 14:36:24.690906 |
description | A Rust Server Implementation of the Mesh Spec for Mina |
homepage | |
repository | |
max_upload_size | |
id | 1396732 |
size | 3,000,025 |
Mina Mesh is an implementation of the Coinbase Mesh specification for the Mina blockchain.
Note: Mina Mesh is WIP and should not yet be used in production.
Ensure you have the Rust toolchain installed. If you do not, see installation instructions here.
# Install
cargo install mina_mesh@0.1.0-beta.1
# Confirm installation
mina-mesh --help
Note: the version specifier is necessary when installing from the
beta
release channel. The latest version can be found onmina_mesh
's crates.io page.
The server depends on several environment variables.
MINAMESH_PROXY_URL
: a Mina proxy (GraphQL) endpoint. The default is
https://mainnet.minaprotocol.network/graphql
.
MINAMESH_ARCHIVE_DATABASE_URL
: a connection string referencing a Mina archive database.
MINAMESH_GENESIS_BLOCK_IDENTIFIER_HEIGHT
and MINAMESH_GENESIS_BLOCK_IDENTIFIER_STATE_HASH
: we
can retrieve these using the fetch-genesis-block-identifier
command.
mina-mesh fetch-genesis-block-identifier >> .env
mina-mesh serve --playground
Note: the presence of the
--playground
flag enables the serving of an OpenAPI playground in response toGET /
. To disable this endpoint, omit the--playground
flag.
Visit http://0.0.0.0:3000
for an interactive playground with which you can
explore and test endpoints.
Everyone interacting in this repo is expected to follow the code of conduct.
Contributions are welcome and appreciated! Check out the contributing guide before you dive in.
Mina Mesh is Apache licensed.