Here’s a **step-by-step overview** of how to run your own Layer-1 chain on Cellframe:
---
### 1. **Understand What You’re Building**
You're creating a **subchain** (a Layer-1 blockchain) that:
- Runs on top of the **Cellframe Layer-0 infrastructure**.
- Can have its **own tokens, rules, services, and dApps**.
- Inherits post-quantum security, network communication, and scalability features from Cellframe.
---
### ⚙️ 2. **Install the Cellframe Node Software**
### 🔧 Dependencies:
- Linux (Ubuntu/Debian preferred)
- CMake
- GCC / Clang
- C/C++ Dev Libraries
#### 🖥️ Basic Steps:
```bash
# Clone the repo
git clone https://github.com/cellframe/cellframe-node.git
cd cellframe-node
# Initialize submodules (important)
git submodule update --init --recursive
# Create build directory
mkdir build && cd build
# Generate Makefiles
cmake ..
# Build the node
make
# Optional: install system-wide
sudo make install
```
> You now have a **basic Cellframe node** installed. You can run it in mainnet or testnet mode and configure it to run **services or subchains**.
---
### 🧪 3. **Start in Testnet Mode First**
Start the node in testnet mode to avoid messing with real tokens:
```bash
cellframe-node -c cellframe-node-testnet.conf
```
This connects to the **testnet Cellframe network** and lets you experiment freely.
---
### 🌐 4. **Create Your Own Subchain (Layer-1)**
To run your own Layer-1 on Cellframe:
1. **Register a subchain config file**
You define your chain ID, rules, encryption, tokens, etc.
2. **Launch the subchain as a service**
Cellframe uses a **modular service-based architecture**. Your chain runs like a plug-in.
3. **Use SDKs for additional services**
If you want dApps or special logic, use the **Cellframe SDK (C or Python)** to write t-dApps or service modules.
---
### 🛠️ 5. **Example Subchain Service Setup**
You would typically:
```bash
# Launch node
cellframe-node -c yournode.conf
# Register your subchain (example)
cellframe-cli chain create --chain-id=mychain --token=MYT --shards=4 --postquantum
# Start your service
cellframe-cli service start mychain
```
> Cellframe uses a CLI tool for management (`cellframe-cli`), and everything can be automated with scripts.
---
### 🧰 6. **Tools & SDKs**
- **C SDK**: For writing fast, native modules.
- **Python SDK**: For prototyping or lightweight services.
- **Explorer / Dashboard**: Optional web-based interface.
---
### 📚 Resources
- [📘 Whitepaper](https://cellframe.net/white-paper/)
- [📂 GitHub (core node)](https://github.com/cellframe/cellframe-node)
- [🧪 SDK](https://github.com/cellframe/cellframe-sdk)
- [💬 Telegram / Discord](https://t.me/cellframe_en)
---
## 💡 TL;DR
To run a Cellframe Layer-1:
1. Install Cellframe node (Linux).
2. Connect to testnet first.
3. Define a new subchain.
4. Register and launch your chain as a service.
5. Build custom logic or tokens with the SDK.
---