-
-
-
-[](LICENSE)
-[](https://github.com/keep-starknet-strange/madara/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# ⚡ Madara: Starknet Sequencer 👉👈
-
-Welcome to **Madara**, a blazing fast ⚡ [Starknet](https://www.starknet.io/)
-sequencer designed to make your projects soar!
-
-Built on the robust Substrate framework and fast, thanks to Rust 🦀, Madara
-delivers unmatched performance and scalability to power your Starknet-based
-Validity Rollup chain.
-
-Dive into the world of Madara and join our passionate community of contributors!
-Together, we're pushing the boundaries of what's possible within the Starknet
-ecosystem.
-
-🚀 Discover the unparalleled flexibility and might of Madara, your gateway to
-launching your very own Starknet appchain or L3. Harness the prowess of Cairo,
-while maintaining complete control over your custom appchain, tailored to your
-specific requirements. Madara is designed to empower a multitude of projects,
-fueling growth within the Starknet ecosystem.
-
-## 📣 Peripheral repositories
-
-- [Madara Explorer](https://github.com/lambdaclass/madara_explorer) by the great
- [LambdaClass](https://lambdaclass.com/) team 🫶: A block explorer for Madara.
-- [Madara Infra](https://github.com/keep-starknet-strange/madara-infra): A
- collection of scripts and tools to deploy and manage Madara on different
- environments (e.g. AWS, docker, ansible, etc.). It also contains the
- [Starknet Stack](https://github.com/keep-starknet-strange/madara-infra/blob/main/starknet-stack/docker-compose.yml)
- demo `docker-compose` file.
-- [Madara Kit Application](https://github.com/keep-starknet-strange/madara-app):
- A simple application that demonstrates how to use Madara. Deployed on
- `https://app.madara.zone`.
-- [Madara Docsite](https://github.com/keep-starknet-strange/madara-app): The
- source code of the Madara documentation website. Deployed on
- `https://docs.madara.zone`.
-
-## 🌟 Features
-
-- Starknet sequencer 🐺
-- Built on Substrate 🌐
-- Rust-based for safety and performance 🏎️
-- Custom FRAME pallets for Starknet functionality 🔧
-- Comprehensive documentation 📚
-- Active development and community support 🤝
-
-## 📚 Documentation
-
-Get started with our comprehensive documentation, which covers everything from
-project structure and architecture to benchmarking and running Madara:
-
-- [Architecture Overview](./docs/architecture.md)
-- [Project Structure](./docs/project-structure.md)
-- [Getting Started Guide](./docs/getting-started.md)
-- [Run benchmark yourself](./benchmarking/README.md)
-
-## 🏗️ Build & Run
-
-Want to dive straight in? Check out our
-[Getting Started Guide](./docs/getting-started.md) for instructions on how to
-build and run Madara on your local machine.
-
-## Benchmarking
-
-Benchmarking is an essential process in our project development lifecycle, as it
-helps us to track the performance evolution of Madara over time. It provides us
-with valuable insights into how well Madara handles transaction throughput, and
-whether any recent changes have impacted performance.
-
-You can follow the evolution of Madara's performance by visiting our
-[Benchmark Page](https://keep-starknet-strange.github.io/madara/dev/bench/).
-
-However, it's important to understand that the absolute numbers presented on
-this page should not be taken as the reference or target numbers for a
-production environment. The benchmarks are run on a self-hosted GitHub runner,
-which may not represent the most powerful machine configurations in real-world
-production scenarios.
-
-Therefore, these numbers primarily serve as a tool to track the _relative_
-performance changes over time. They allow us to quickly identify and address any
-performance regressions, and continuously optimize the system's performance.
-
-In other words, while the absolute throughput numbers may not be reflective of a
-production environment, the relative changes and trends over time are what we
-focus on. This way, we can ensure that Madara is always improving, and that we
-maintain a high standard of performance as the project evolves.
-
-One can use flamegraph-rs to generate flamegraphs and look for the performance
-bottlenecks of the system by running the following :
-
-```bash
-flamegraph --root --open -- ./target/release/madara --dev --pool-limit=100000 --pool-kbytes=500000 --rpc-methods=unsafe --rpc-cors=all --in-peers=0 --out-peers=1 --no-telemetry
+# Madara App Chain Template
+
+A fresh [Madara](https://github.com/keep-starknet-strange/madara) app chain, ready for hacking 🚀
+
+All bugs, suggestions, and feature requests should be made upstream in the [Madara](https://github.com/keep-starknet-strange/madara) repository.
+
+## Getting Started
+
+Depending on your operating system and Rust version, there might be additional packages required to compile this template.
+Check the [Install](https://docs.substrate.io/install/) instructions for your platform for the most common dependencies.
+Alternatively, you can use one of the [alternative installation](#alternatives-installations) options.
+
+### Build
+
+Use the following command to build the node without launching it:
+
+```sh
+cargo build --release
+```
+
+### Embedded Docs
+
+After you build the project, you can use the following command to explore its parameters and subcommands:
+
+```sh
+./target/release/app-chain-node -h
+```
+
+You can generate and view the [Rust Docs](https://doc.rust-lang.org/cargo/commands/cargo-doc.html) for this template with this command:
+
+```sh
+cargo +nightly doc --open
+```
+
+### Single-Node Development Chain
+
+The following command starts a single-node development chain.
+
+```sh
+./target/release/app-chain-node --dev
+```
+
+Please note, Madara overrides the default `dev` flag in substrate to meet it's requirements. The following flags are automatically enabled with the `--dev` argument:
+
+`--alice`, `--rpc_external`,`--rpc-methods=unsafe`,`--force-authoring`
+
+To store the chain state in a specific folder, use the following command
+
+```sh
+./target/release/app-chain-node --base-path