Currently, there isn't an easy way to visualize the original data square of a Celestia block.
This idea entails building a visualization tool (either CLI or web app) that visualizes shares in the original data square. The end result should show something like this:
with unique colors per namespace. We could special-case the reserved namespaces so they always use the same color. The tool could accept chain-id and block height as parameters.
The long-term goal of this project could be to get it upstreamed into an explorer. See celenium-interface#35.
Currently, the only Celestia consensus full node implementation is written in Go. We could write an experimental consensus full node implementation in Rust.
The short-term goal of this project could be something minimal. Rough steps:
The medium-term goal of this project could be to implement ProcessProposal
in Rust so that it could be fed into SP1. Out of scope: p2p, networking, mempool.
The long-term goal of this project would be to have a totally functional consensus full node implementation in Rust. Notable features include: can follow the tip of the chain, propose blocks, and sync from genesis.
Name ideas for the binary: rtia, relestia, cars (inspired by Celestia-App RuSt).
CreateCommitment
A subset of the previous idea that implemenets CreateCommitment
in Rust. This is important for roll-ups that want to generate the share commitment for some blob in Rust instead of Golang.
Currently, there isn't a Kurtosis package for Celestia. Kurtosis is a tool that enables developers to spin up local (or remote) test environments with containers. We could build a Kurtosis package for Celestia that includes a container for a consensus validator, a DA bridge node, and a DA light node. We could define a variant of the package with a faucet and local block explorer. This is kind of like celestia-stack-internal.
Etherscan offers a service called "Watch list" that enables users to set up email alerts for Ethereum addresses. The user can choose to be notified when an address sends or receives some ETH. A similar service would be beneficial for Celestia users. Ideally a user could elect to monitor multiple Celestia addresses for operations like:
Create a front-end that makes it easy to upload files to Celestia.
Potential domain names: