Add CLAUDE.md project context
This commit is contained in:
parent
64ea897cdc
commit
2f6e12d152
55
CLAUDE.md
Normal file
55
CLAUDE.md
Normal file
@ -0,0 +1,55 @@
|
||||
# Claude - blockchain-core
|
||||
|
||||
## Projet
|
||||
Rust workspace : blockchain core library + REST API node.
|
||||
Partie d'un ecosysteme de 3 repos (blockchain-core, blockchain-cli, blockchain-flutter).
|
||||
|
||||
## Architecture
|
||||
```
|
||||
blockchain-core/ (Rust workspace)
|
||||
├── core/ Library crate - blockchain primitives
|
||||
│ └── src/ block, chain, wallet, transaction, mining, state, persistence, config, error
|
||||
├── node/ Binary crate - axum REST API (port 3000)
|
||||
│ └── src/ main, state (Arc<RwLock>), api/ (blocks, transactions, wallets, mining, chain, errors)
|
||||
└── tests/ Integration tests
|
||||
```
|
||||
|
||||
## Decisions techniques
|
||||
- **Account-based** (HashMap<Address, Balance>), pas UTXO
|
||||
- **SHA-256** (sha2) pour hashing
|
||||
- **Ed25519** (ed25519-dalek) pour signatures
|
||||
- **axum 0.8** pour l'API REST
|
||||
- **JSON files** pour persistence (pas de DB)
|
||||
- **u64** pour montants (comme satoshis, pas de floats)
|
||||
|
||||
## API Endpoints (port 3000)
|
||||
- `GET /api/blocks` - List blocks (paginated)
|
||||
- `GET /api/blocks/:hash` - Block by hash
|
||||
- `POST /api/transactions` - Submit signed tx
|
||||
- `GET /api/transactions/pending` - Pending pool
|
||||
- `POST /api/wallets` - Generate wallet
|
||||
- `GET /api/wallets/:address/balance` - Balance + nonce
|
||||
- `POST /api/mine` - Mine block
|
||||
- `GET /api/mining/status` - Difficulty, reward
|
||||
- `GET /api/chain/info` - Chain info
|
||||
- `POST /api/chain/validate` - Validate chain
|
||||
- `GET /api/health` - Health check
|
||||
|
||||
## Commandes
|
||||
```bash
|
||||
cargo build # Build tout
|
||||
cargo test # Tests unitaires
|
||||
cargo run -p blockchain-node # Lancer le node
|
||||
cargo clippy # Lint
|
||||
```
|
||||
|
||||
## Phase actuelle
|
||||
Phase 1-3 complètes : core lib + node API implémentés.
|
||||
Prochaine étape : installer Rust, compiler, lancer les tests.
|
||||
|
||||
## Repos liés
|
||||
- blockchain-cli (Rust CLI, HTTP only)
|
||||
- blockchain-flutter (Flutter app, HTTP only)
|
||||
|
||||
## Gitea
|
||||
https://git.etheryale.com/StillHammer/blockchain-core
|
||||
Loading…
Reference in New Issue
Block a user