4NK_template/docs/COMMUNITY_GUIDE.md
Your Name 03fc255fdc
Some checks failed
CI - 4NK Node / Code Quality (push) Failing after 46s
CI - 4NK Node / Unit Tests (push) Failing after 29s
CI - 4NK Node / Integration Tests (push) Failing after 10s
CI - 4NK Node / Docker Build & Test (push) Failing after 8s
CI - 4NK Node / Documentation Tests (push) Failing after 4s
CI - 4NK Node / Security Tests (push) Failing after 27s
CI - 4NK Node / Release Guard (push) Has been skipped
CI - 4NK Node / Performance Tests (push) Failing after 27s
CI - 4NK Node / Notify (push) Failing after 1s
chore(template): update cursor rules, gitea templates, guards, ignores
2025-08-27 11:19:19 +02:00

10 KiB

Guide de la Communauté - 4NK Node

🌟 Bienvenue dans la Communauté 4NK Node !

Ce guide vous accompagne dans votre participation à la communauté open source de 4NK Node, une infrastructure complète pour les paiements silencieux Bitcoin.

🎯 À Propos de 4NK Node

Qu'est-ce que 4NK Node ?

4NK Node est une infrastructure Docker complète qui permet de déployer et gérer facilement un écosystème Bitcoin complet incluant :

  • Bitcoin Core : Nœud Bitcoin avec support signet
  • Blindbit : Service de filtres pour les paiements silencieux
  • SDK Relay : Système de relais avec synchronisation mesh
  • Tor : Proxy anonyme pour la confidentialité

Pourquoi les Paiements Silencieux ?

Les paiements silencieux (Silent Payments) sont une innovation Bitcoin qui améliore la confidentialité en permettant de créer des adresses uniques pour chaque transaction, sans révéler de liens entre les paiements.

🤝 Comment Contribuer

Niveaux de Contribution

🟢 Débutant

  • Documentation : Améliorer les guides, corriger les fautes
  • Tests : Ajouter des tests, signaler des bugs
  • Support : Aider les autres utilisateurs
  • Traduction : Traduire la documentation

🟡 Intermédiaire

  • Fonctionnalités : Implémenter de nouvelles fonctionnalités
  • Optimisations : Améliorer les performances
  • Tests avancés : Tests d'intégration et de performance
  • Outils : Créer des scripts et outils

🔴 Avancé

  • Architecture : Améliorer l'architecture du système
  • Sécurité : Audits de sécurité, améliorations
  • Core features : Fonctionnalités principales
  • Mentorat : Guider les nouveaux contributeurs

Premiers Pas

1. Fork et Clone

# Fork le repository sur Gitea
# Puis clonez votre fork
git clone https://git.4nkweb.com/votre-username/4NK_node.git
cd 4NK_node

# Ajoutez l'upstream
git remote add upstream https://git.4nkweb.com/4nk/4NK_node.git

2. Installation Locale

# Installez l'infrastructure
./restart_4nk_node.sh

# Vérifiez que tout fonctionne
docker ps

3. Exploration

# Explorez la documentation
ls docs/
cat docs/INDEX.md

# Exécutez les tests
./tests/run_all_tests.sh

📚 Ressources d'Apprentissage

Documentation Essentielle

Pour Commencer

Pour Développer

Pour Contribuer

Ressources Externes

Bitcoin et Paiements Silencieux

Technologies Utilisées

🛠️ Environnement de Développement

Prérequis

Système

# Ubuntu/Debian
sudo apt update
sudo apt install docker.io docker-compose git curl

# CentOS/RHEL
sudo yum install docker docker-compose git curl

# macOS
brew install docker docker-compose git curl

Développement

# Rust (pour sdk_relay)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Python (pour les tests)
sudo apt install python3 python3-pip
pip3 install websockets requests

Configuration de Développement

Variables d'Environnement

# Configuration de développement
export RUST_LOG=debug
export ENABLE_SYNC_TEST=1
export BITCOIN_NETWORK=signet

Outils de Développement

# Linting et formatting
cargo clippy
cargo fmt

# Tests
cargo test
./tests/run_all_tests.sh

# Build
cargo build --release

🐛 Signaler un Bug

Avant de Signaler

  1. Vérifiez la documentation - La solution pourrait déjà être documentée
  2. Recherchez les issues existantes - Le bug pourrait déjà être signalé
  3. Testez sur la dernière version - Le bug pourrait déjà être corrigé

Template de Bug Report

Utilisez le template fourni dans Gitea ou suivez cette structure :

## Description du Bug
Description claire et concise du problème.

## Étapes pour Reproduire
1. Aller à '...'
2. Cliquer sur '...'
3. Faire défiler jusqu'à '...'
4. Voir l'erreur

## Comportement Attendu
Description de ce qui devrait se passer.

## Comportement Actuel
Description de ce qui se passe actuellement.

## Informations Système
- OS: [ex: Ubuntu 20.04]
- Docker: [ex: 20.10.0]
- Version: [ex: v1.0.0]

## Logs

Logs pertinents ici

💡 Proposer une Fonctionnalité

Avant de Proposer

  1. Vérifiez la roadmap - La fonctionnalité pourrait déjà être planifiée
  2. Discutez avec la communauté - Utilisez les discussions Gitea
  3. Préparez un prototype - Montrez que c'est faisable

Template de Feature Request

## Résumé
Description claire et concise de la fonctionnalité souhaitée.

## Motivation
Pourquoi cette fonctionnalité est-elle nécessaire ?

## Proposition
Description détaillée de la fonctionnalité proposée.

## Alternatives Considérées
Autres solutions envisagées.

## Exemples d'Utilisation
Comment cette fonctionnalité serait-elle utilisée ?

🔄 Processus de Contribution

Workflow Git

1. Créer une Branche

# Depuis la branche main
git checkout main
git pull upstream main

# Créer une branche pour votre contribution
git checkout -b feature/nom-de-votre-feature
# ou
git checkout -b fix/nom-du-bug

2. Développer

# Développez votre fonctionnalité
# Ajoutez des tests
# Mettez à jour la documentation

# Commitez régulièrement
git add .
git commit -m "feat: ajouter nouvelle fonctionnalité"

3. Tester

# Exécutez les tests
./tests/run_all_tests.sh

# Vérifiez le code
cargo clippy
cargo fmt --check

4. Soumettre

# Poussez vers votre fork
git push origin feature/nom-de-votre-feature

# Créez une Pull Request sur Gitea

Standards de Code

Messages de Commit

Utilisez le format conventionnel :

feat(sdk_relay): add new sync type for metrics
fix(bitcoin): resolve connection timeout issue
docs(api): update WebSocket message format
test(integration): add multi-relay sync tests

Code Style

  • Rust : Suivez les conventions Rust (rustfmt, clippy)
  • Bash : Utilisez shellcheck pour les scripts
  • Python : Suivez PEP 8
  • Markdown : Utilisez un linter markdown

🏷️ Labels et Milestones

Labels Utilisés

Type

  • bug - Problèmes et bugs
  • enhancement - Nouvelles fonctionnalités
  • documentation - Amélioration de la documentation
  • good first issue - Pour les nouveaux contributeurs
  • help wanted - Besoin d'aide

Priorité

  • priority: high - Priorité élevée
  • priority: medium - Priorité moyenne
  • priority: low - Priorité basse

Statut

  • status: blocked - Bloqué
  • status: in progress - En cours
  • status: ready for review - Prêt pour review

Milestones

  • v1.0.0 - Version stable initiale
  • v1.1.0 - Améliorations et corrections
  • v2.0.0 - Nouvelles fonctionnalités majeures

🎉 Reconnaissance

Hall of Fame

Les contributeurs significatifs seront reconnus dans :

  • README.md - Liste des contributeurs
  • CHANGELOG.md - Mentions dans les releases
  • Documentation - Crédits dans les guides
  • Site web - Page dédiée aux contributeurs

Badges et Certifications

  • Contributeur Bronze : 1-5 contributions
  • Contributeur Argent : 6-20 contributions
  • Contributeur Or : 21+ contributions
  • Maintainer : Responsabilités de maintenance

🆘 Besoin d'Aide ?

Canaux de Support

Issues Gitea

Discussions

Contact Direct

FAQ

Questions Fréquentes

Q: Comment installer 4NK Node ? A: Suivez le Guide d'Installation

Q: Comment contribuer au code ? A: Consultez le Guide de Contribution

Q: Comment signaler un bug de sécurité ? A: Contactez security@4nkweb.com (NE PAS créer d'issue publique)

Q: Comment proposer une nouvelle fonctionnalité ? A: Créez une issue avec le label enhancement

🚀 Projets Futurs

Roadmap Communautaire

Court Terme (1-3 mois)

  • Interface utilisateur web
  • Support de nouveaux réseaux Bitcoin
  • Amélioration de la documentation
  • Tests de performance

Moyen Terme (3-6 mois)

  • Support Lightning Network
  • API REST complète
  • Monitoring avancé
  • Déploiement cloud

Long Terme (6-12 mois)

  • Écosystème complet
  • Marketplace d'extensions
  • Support multi-blockchains
  • IA et automatisation

Idées de Contribution

Fonctionnalités Populaires

  • Interface graphique pour la gestion
  • Intégration avec des wallets populaires
  • Support de nouveaux types de paiements
  • Outils de monitoring avancés

Améliorations Techniques

  • Optimisation des performances
  • Amélioration de la sécurité
  • Support de nouvelles plateformes
  • Tests automatisés avancés

Merci de faire partie de la communauté 4NK Node ! Votre contribution aide à construire l'avenir des paiements Bitcoin privés et sécurisés. 🌟