46 lines
1.7 KiB
Rust
46 lines
1.7 KiB
Rust
//! ![Zebra logotype](https://www.zfnd.org/images/zebra-logotype.png)
|
|
//!
|
|
//! Hello! I am Zebra, an ongoing Rust implementation of a Zcash node.
|
|
//!
|
|
//! Zebra is a work in progress. It is developed as a collection of `zebra-*`
|
|
//! libraries implementing the different components of a Zcash node (networking,
|
|
//! chain structures, consensus rules, etc), and a `zebrad` binary which uses them.
|
|
//!
|
|
//! Most of our work so far has gone into `zebra-network`, building a new
|
|
//! networking stack for Zcash, and `zebra-chain`, building foundational data
|
|
//! structures.
|
|
//!
|
|
//! [Rendered docs from the `main` branch](https://doc.zebra.zfnd.org).
|
|
//!
|
|
//! [Join us on the Zcash Foundation Engineering Discord](https://discord.gg/na6QZNd).
|
|
|
|
#![doc(html_favicon_url = "https://www.zfnd.org/images/zebra-favicon-128.png")]
|
|
#![doc(html_logo_url = "https://www.zfnd.org/images/zebra-icon.png")]
|
|
#![doc(html_root_url = "https://doc.zebra.zfnd.org/zebrad")]
|
|
// Standard lints
|
|
#![warn(missing_docs)]
|
|
#![allow(clippy::try_err)]
|
|
#![deny(clippy::await_holding_lock)]
|
|
#![forbid(unsafe_code)]
|
|
// Tracing causes false positives on this lint:
|
|
// https://github.com/tokio-rs/tracing/issues/553
|
|
#![allow(clippy::cognitive_complexity)]
|
|
|
|
#[macro_use]
|
|
extern crate tracing;
|
|
|
|
/// Error type alias to make working with tower traits easier.
|
|
///
|
|
/// Note: the 'static lifetime bound means that the *type* cannot have any
|
|
/// non-'static lifetimes, (e.g., when a type contains a borrow and is
|
|
/// parameterized by 'a), *not* that the object itself has 'static lifetime.
|
|
pub type BoxError = Box<dyn std::error::Error + Send + Sync + 'static>;
|
|
|
|
mod components;
|
|
|
|
pub mod application;
|
|
pub mod commands;
|
|
pub mod config;
|
|
pub mod prelude;
|
|
pub mod sentry;
|