
- Ajout du README.md principal avec architecture et guide d'utilisation - Mise à jour de docs/modules.md avec les nouveaux scripts de gestion - Documentation de la migration WASM et de l'état actuel des projets - Guides d'installation et de développement pour tous les composants
3.3 KiB
3.3 KiB
4NK Development Environment
Ce dépôt contient l'environnement de développement complet pour l'écosystème 4NK, incluant tous les modules SDK, clients et services.
🏗️ Architecture
Projets SDK (Rust)
- sdk_common : Bibliothèque commune avec types et utilitaires partagés
- sdk_client : Client SDK principal avec support WASM (migration flate2 en cours)
- sdk_storage : Service de stockage distribué
- sdk_signer : Service de signature avec interface TypeScript
Clients (Node.js/TypeScript)
- sdk_signer_client : Client TypeScript pour sdk_signer
- ihm_client : Interface utilisateur web
Services
- 4NK_node : Infrastructure Docker complète avec Bitcoin, Tor, et services 4NK
- sdk_relay : Service de relais pour la communication P2P
Outils
- 4NK_template : Template Docker pour les nouveaux projets
- 4NK_wallet : Application wallet
🚀 Démarrage rapide
Prérequis
- Docker et Docker Compose v2
- Rust (latest stable)
- Node.js 18+
- Git
Installation
# Cloner le dépôt
git clone <repository-url>
cd 4NK_dev
# Configurer l'environnement
./setup_dev_env.sh
# Démarrer l'infrastructure
cd 4NK_node
./scripts/manage_services.sh start
📦 Gestion des dépendances WASM
État actuel
- sdk_common : ✅ Migré vers
flate2
(remplacezstd
) - sdk_client : 🔄 Stub WASM temporaire avec
flate2
(en attente de migration complète) - sdk_signer : ✅ Compatible avec le stub WASM
Migration en cours
- Phase 1 : ✅ Migration
sdk_common
versflate2
- Phase 2 : 🔄 Migration
sdk_client
versk256
etflate2
- Phase 3 : ⏳ Intégration complète WASM
- Phase 4 : ⏳ Déploiement
🛠️ Développement
Compilation des projets
# Compiler tous les projets Rust
for project in sdk_common sdk_client sdk_storage; do
cd $project && cargo build --release && cd ..
done
# Compiler les projets Node.js
for project in sdk_signer sdk_signer_client ihm_client; do
cd $project && npm install && npm run build && cd ..
done
Gestion des services
# Arrêter tous les services
cd 4NK_node && ./scripts/manage_services.sh stop
# Nettoyer l'environnement
./scripts/manage_services.sh clean
# Redémarrer les services
./scripts/manage_services.sh start
📚 Documentation
- Résultats de compilation - Statut détaillé de tous les projets
- Modules Docker - Documentation des modules Docker
- Changelog - Historique des versions
🔧 Scripts utiles
setup_dev_env.sh
: Configuration de l'environnement de développementupdate_repos.sh
: Mise à jour des dépôts depuis repos.csv4NK_node/scripts/manage_services.sh
: Gestion des services Docker
📋 Structure des branches
- main : Branche principale pour 4NK_dev et 4NK_node
- docker-support : Branche de développement pour les SDKs et clients
- dev : Branche de développement pour certaines fonctionnalités
🤝 Contribution
- Créer une branche depuis
docker-support
oumain
selon le projet - Développer et tester localement
- Pousser les modifications sur la branche appropriée
- Créer une pull request
📄 Licence
MIT License - voir les fichiers LICENSE individuels dans chaque projet.