Go to file
teor 334329f38a state: Move block header hashing to block_index
Only hash block headers in the lowest-level block index code.

This design has a few benefits:
  - failures are obvious, because the hash is not available,
  - get_tip() returns a smaller object,
  - we avoid re-hashing block headers multiple times.

These efficiency changes may be needed to support chain reorganisations,
multiple tips, and heavy query loads.
2020-06-12 09:46:18 -07:00
.github Bump codecov/codecov-action from v1 to v1.0.7 2020-06-09 17:47:18 -04:00
design design: Add validation to the design doc 2020-06-12 09:46:18 -07:00
zebra-chain Wrap Transaction in Arc 2020-06-06 18:13:17 -04:00
zebra-client Add Zebra logo to all workspace crates. 2020-02-26 21:25:35 -08:00
zebra-consensus state: Make Response::Added return the block header hash 2020-06-12 09:46:18 -07:00
zebra-network Use new seeder address for yolo.money 2020-06-10 21:49:25 -04:00
zebra-rpc Add Zebra logo to all workspace crates. 2020-02-26 21:25:35 -08:00
zebra-script Correct block version parsing. 2020-03-18 21:34:02 -04:00
zebra-state state: Move block header hashing to block_index 2020-06-12 09:46:18 -07:00
zebra-test-vectors Add initial version of zebra-state (#414) 2020-06-02 16:16:17 -07:00
zebrad Reorganize `connect` subcommand for readibility (#450) 2020-06-12 09:20:58 -07:00
.firebaserc Try building internal docs. 2020-02-10 18:12:43 -08:00
.gitignore Ignore emacs temp files 2020-06-12 09:46:18 -07:00
.rustfmt.toml
Cargo.lock consensus: add a (failing) verify round-trip test 2020-06-12 09:46:18 -07:00
Cargo.toml fix tracing configuration issues (#432) 2020-06-04 19:34:06 -07:00
Dockerfile Try debian:buster-slim instead of alpine 2020-01-30 13:39:13 -05:00
LICENSE-APACHE Add copyright marks on each license 2019-11-14 11:50:49 -08:00
LICENSE-MIT Add copyright marks on each license 2019-11-14 11:50:49 -08:00
README.md Add link to CI workflows on main 2020-04-22 03:19:33 -04:00
clippy.toml Apply clippy fixes 2020-02-05 12:42:32 -08:00
cloudbuild.yaml 0.17.0 has an old version cached, rolling back to 0.15.0 2020-02-04 04:44:38 -05:00
codecov.yml Make per-patch coverage informational, not enforced 2020-06-03 02:34:28 -04:00
firebase.json Configure redirect for firebase hosting 2020-01-16 18:38:16 -05:00
prometheus.yaml Tell Prometheus to scrape more aggressively 2020-02-14 20:14:05 -05:00

README.md

Zebra logotype


codecov License

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.

Join us on Discord.

License

Zebra is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT.

Metrics

Notes on local metrics collection:

# create a storage volume for grafana (once)
sudo docker volume create grafana-storage
# create a storage volume for prometheus (once)
sudo docker volume create prometheus-storage

# run prometheus with the included config
sudo docker run --network host -v prometheus-storage:/prometheus -v /path/to/zebra/prometheus.yaml:/etc/prometheus/prometheus.yml  prom/prometheus

# run grafana
sudo docker run -d --network host -e GF_SERVER_HTTP_PORT=3030 -v grafana-storage:/var/lib/grafana grafana/grafana

Now the grafana dashboard is available at http://localhost:3030 ; the default password is admin/admin.