Taler Blockchain

Taler Blockchain Node Docs
project

Main docs

Project Overview - Architecture, Runtime Composition, Consensus
Node Deployment - Installation, assembly, launch, operation
Partner Pallet Integration - Adding external pallets

Detailed docs

Comprehensive Analysis of Staking Pallet - In-depth analysis of mod.rs and impls.rs
Detailed Function Analysis - Thorough description of key functions
Architectural Diagram - Visualization of structure and data flows

Technical Documentation

Rust setup Installing Rust and dependencies

Overview

Key Features

Architecture

Substrate Node: Full node with CLI, RPC, chain-spec
Custom Runtime: The "taler" runtime with a set of pallets
Modified Staking: Custom staking pallet with vivid functionality
Consensus: BABE + GRANDPA for block production and finalization

Economic Model

Standard Staking: Basic staking with fixed percentages
Vivid Staking: Additional percentages for long-term locking
Issuance Limits: Control over token issuance
Flexible Rewards: Flexible rewards system with various recipients

Technical Specifications

SS58 Prefix: 10960 for addresses
Storage Optimization: Efficient storage algorithms
Election Provider: NPoS validator elections
Runtime API: External interfaces for integration

Quick Start

1. Install Dependencies

#docs/rust-setup.md for detailed instructions
rustup default stable
rustup update
rustup target add wasm32-unknown-unknown --toolchain nightly

2. Build the Project

cargo build --release

3. Launch Dev Network

./target/release/taler-node --dev -lruntime=debug

4. Connection to Polkadot.js Apps

Opened Polkadot.js Apps and connect to
ws://localhost:9944

Main Components

Staking Pallet

Standard Staking: Basic staking with fixed percentages
Vivid Staking: Additional percentages for months of locking
Validator Management: Managing validators
Nominator System: Nominator system
Reward Distribution: Reward distribution

Session Management

Era Planning: Planning eras
Session Rotation: Session rotation
Validator Selection: Selecting validators
Election Provider: Election provider

Runtime API

Staking Interface: Staking interface
Election Provider: Election provider
Session Manager: Session manager
External APIs: External APIs

Development

Adding New Palettes

See Partner pallet integration for detailed instructions.

Modifying Staking

See detailed analysis of the Staking pallet for understanding the architecture.

Testing

# Running tests
cargo test

# Benchmarking
cargo run --release --features runtime-benchmarks -- benchmark pallet --pallet pallet_staking --extrinsic '*' --steps 20 --repeat 10

Support

For questions and suggestions, please create issues in the repository or contact the development team.

License

The project uses the Apache 2.0 license. See LICENSE for details.
Project overview
Table of content
Main Documentation
Detailed Analysis of the Staking Palette
Technical Documentation
Overview
Key Features
Architecture
Economic Model
Technical Features
Quick Start
1. Installing Dependencies
2. Building the Project
3. Launching the Dev Network
4. Connecting to Polkadot.js Apps
Project Structure
Main Components
Staking Pallet
Session Management
Runtime API
Development
Adding New Palettes
Staking Modification
Testing
Support
License