Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/adria0/tesseracts

A small block explorer for geth PoAs written in rust
https://github.com/adria0/tesseracts

blockchain-explorer ethereum learning-by-doing rust

Last synced: about 1 month ago
JSON representation

A small block explorer for geth PoAs written in rust

Awesome Lists containing this project

README

        

![](https://www.rust-lang.org/logos/rust-logo-32x32-blk.png)
![Rust](https://github.com/adria0/tesseracts/workflows/Rust/badge.svg)
[![Docker build](https://img.shields.io/docker/automated/adria0/tesseracts.svg?style=flat)](https://cloud.docker.com/repository/docker/adria0/tesseracts)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)

# Tesseracts
A minimalistic block explorer initially created to learn rust.

This block explorer has been created as a rust self-learning project to give support to [nou.network](https://nou.network), a small beta PoA for social projects with nodes from university teachers ([UPC](https://www.upc.edu), [UAB](https://www.uab.cat), [UOC](https://www.uoc.edu), [UdG](https://www.udg.edu), [UIB](https://www.uib.es/es)), [GuifiNet](https://guifi.net/en) and members the [White Hat Group](https://giveth.io/#heronav).

## Disclaimer

This is an experimental block explorer, my first attempt to write something in rust, and expect to find newbie rustacean antipatterns here. Nonetheless it seems that it works as expected.

## Features

![screenshot](https://raw.githubusercontent.com/adriamb/tesseracts/master/extra/screenshot.png)

At this moment it comes with the folowing features (checked items) and there's a roadmap for the next ones (unchecked items)

- [X] Last blocks page
- [X] Show block
- [X] Show transaction
- [X] Show address and their transactions
- [X] Have a copy of blockchain in the local db
- [X] Gracefull termination with control-C
- [X] Configuration file
- [X] Embeeded templates (does not need external files)
- [X] Upload contracts and parse calls and logs
- [X] Block & Tx pagination
- [X] Command line parameters with better debug
- [X] Internal transactions
- [X] Parse clique block headers
- [X] Named accounts
- [X] Automatic function detection
- [ ] Download receipts in batch
- [ ] Forward-backwards block scanning
- [ ] Set postly URL... `/tx` `/addr` `/block`
- [ ] Automatic ERC20 parsing `/erc20`
- [ ] Suport for user configuration
- [ ] Naming addresses support
- [ ] Specify token address

## Set up

To run tesseracts, you need to install rust

`curl https://sh.rustup.rs -sSf | sh`

create a .toml config file (see `cfg.example.toml`)

run the application with (if your config file is named `cfg.toml`)

`cargo run -- --cfg cfg.toml -vvv`