**Motivations:** - Mettre à jour la documentation pour refléter les nouvelles fonctionnalités UTXO - Documenter les nouvelles routes API - Expliquer les fonctionnalités de pagination, tri et consolidation **Root causes:** - La documentation n'était pas à jour avec les nouvelles fonctionnalités - Les nouvelles routes API n'étaient pas documentées - Les utilisateurs n'étaient pas informés des nouvelles capacités **Correctifs:** - Mise à jour de learn.html avec section sur la gestion des UTXOs - Ajout de la documentation des nouvelles routes API dans api-docs.html - Mise à jour de docs/DASHBOARD.md avec les nouvelles fonctionnalités **Evolutions:** - learn.html : Section sur la gestion des UTXOs (pagination, tri, consolidation, capacité d'ancrage) - api-docs.html : Documentation des routes : - GET /api/utxo/list : Liste des UTXOs avec compteurs - GET /api/utxo/small-info : Infos sur les petits UTXOs - POST /api/utxo/consolidate : Consolidation des petits UTXOs - Documentation de l'erreur "too-long-mempool-chain" (503) - docs/DASHBOARD.md : Mise à jour de la section UTXO avec pagination, tri, consolidation, capacité d'ancrage restante **Pages affectées:** - signet-dashboard/public/learn.html: Section gestion des UTXOs - signet-dashboard/public/api-docs.html: Documentation des nouvelles routes API et erreur too-long-mempool-chain - docs/DASHBOARD.md: Mise à jour fonctionnalités UTXO et endpoints
9.2 KiB
Dashboard - Pages et Fonctionnalités
Auteur : Équipe 4NK Date : 2026-01-24 Version : 1.0
Vue d'Ensemble
Le Dashboard Bitcoin Signet est une interface web de supervision et de test accessible à l'adresse https://dashboard.certificator.4nkweb.com.
Port local : 3020 (fixe, défini dans le service systemd)
Pages Disponibles
1. Page Principale (/ ou /index.html)
Fichier : signet-dashboard/public/index.html
Fonctionnalités :
Section Supervision
-
État de la Blockchain
- Hauteur de bloc (mise à jour automatique)
- Dernier bloc miné (timestamp)
- Transactions dans le dernier bloc
- Taille du dernier bloc
- Hash du dernier bloc
- Difficulté de mining
- Taux de hash moyen
-
Statistiques du Réseau
- Nombre de pairs connectés
- Taille totale de la blockchain
- Taux de transactions par seconde
- Frais moyens des transactions
- Montant moyen des transactions
-
État du Wallet
- Solde mature
- Solde immature
- Solde non confirmé
- Solde total
- Nombre d'UTXO
-
Statistiques d'Ancrage
- Nombre total d'ancrages
- Capacité d'ancrage restante : Nombre d'ancrages possibles avec les UTXOs disponibles
- Affiche le nombre total d'ancrages possibles
- Affiche le nombre d'UTXOs confirmés disponibles (sous-titre)
Section Test de l'API d'Ancrage
-
Saisie de Texte
- Champ texte pour saisir du contenu
- Génération automatique du hash SHA256
- Vérification du hash sur la blockchain
- Ancrage du document
-
Sélection de Fichier
- Upload de fichier
- Génération automatique du hash SHA256
- Vérification du hash sur la blockchain
- Ancrage du document
-
Options de Filigrane
- Activation/désactivation du filigrane
- Texte libre du filigrane
- Signature cryptographique
- Nom du dépositaire
- Options de date (UTC, locale)
- Options blockchain (numéro de bloc, hash du bloc, hash du document)
- Noms de fichiers personnalisables
-
Résultats
- Affichage des hash (original et filigrané)
- Liens cliquables vers mempool.4nkweb.com pour les TXID
- Statut des transactions
- Confirmations
- Téléchargement automatique des fichiers :
- Document original
- Document filigrané
- Certificat PDF
- Document fusionné (filigrané + certificat)
Section Faucet
- Demande de Sats
- Champ pour saisir une adresse Bitcoin Signet
- Distribution de 50 000 sats (0.0005 BTC)
- Affichage du TXID et du statut
2. Page Liste des Hash (/hash-list)
Fichier : signet-dashboard/public/hash-list.html
Fonctionnalités :
- Liste de tous les hash ancrés sur la blockchain
- Informations pour chaque hash :
- Hash SHA256
- TXID de la transaction
- Hauteur de bloc
- Nombre de confirmations
- Timestamp
- Liens vers mempool.4nkweb.com
- Recherche et filtrage
- Pagination
3. Page Liste des UTXO (/utxo-list)
Fichier : signet-dashboard/public/utxo-list.html
Fonctionnalités :
- Liste de tous les UTXO du wallet, catégorisés par type :
- 💰 Bloc Rewards (récompenses de minage)
- 🔗 Ancrages (transactions d'ancrage, 2500 sats chacun)
- 🔄 Changes (monnaie de retour)
- 💸 Frais (transactions avec frais onchain)
- Informations pour chaque UTXO :
- TXID (lien vers mempool.4nkweb.com)
- Index de sortie (vout)
- Montant (en BTC et sats)
- Adresse
- Confirmations
- Statut (Disponible, Verrouillé, Dépensé onchain)
- Pagination : 100 UTXOs par page avec contrôles précédent/suivant
- Tri : Tri par montant ou confirmations (croissant/décroissant) en cliquant sur les en-têtes
- Capacité d'ancrage restante : Affiche le nombre d'ancrages possibles et le nombre d'UTXOs confirmés disponibles
- Consolidation : Bouton pour consolider les petits UTXOs (< 2500 sats) en un gros UTXO
- Affiche dynamiquement le nombre d'UTXOs et le montant total concernés
- Désactivé si aucun UTXO à consolider
- Filtrage confirmés : Seuls les UTXOs avec au moins 1 confirmation sont affichés (pour éviter les erreurs "too-long-mempool-chain")
- Export des données (fichier texte téléchargeable)
4. Page Rejoindre le Réseau (/join-signet)
Fichier : signet-dashboard/public/join-signet.html
Fonctionnalités :
- Instructions pour rejoindre le réseau Signet
- Informations de connexion :
- Adresse IP du nœud
- Port P2P (38333)
- Challenge du signet
- Magic number
- Commandes pour configurer un nouveau nœud
- Liens vers la documentation
5. Page Documentation API (/api-docs)
Fichier : signet-dashboard/public/api-docs.html
Fonctionnalités :
- Documentation complète de toutes les APIs
- Endpoints documentés :
- API d'Ancrage (
/api/anchor/document,/api/anchor/verify) - API Faucet (
/api/faucet/request) - API Filigrane (
/api/watermark/document) - API ClamAV (
/api/scan/buffer)
- API d'Ancrage (
- Exemples de requêtes curl
- Codes de statut HTTP
- Authentification et clés API
- Format des réponses
6. Page Apprendre Bitcoin (/learn)
Fichier : signet-dashboard/public/learn.html
Fonctionnalités :
- Ressources éducatives sur Bitcoin
- Concepts de base :
- Blockchain
- Transactions
- Mining
- Wallets
- Signet vs Testnet
- Liens vers des ressources externes
- Glossaire des termes
Navigation
Menu Principal
Le menu principal est accessible depuis toutes les pages :
- Dashboard : Retour à la page principale
- Explorer Mempool : Lien vers mempool.4nkweb.com
- Liste des Hash : Page de liste des hash
- Liste des UTXO : Page de liste des UTXO
- Rejoindre le Réseau : Instructions pour rejoindre
- Documentation API : Documentation complète
- Apprendre Bitcoin : Ressources éducatives
Mise à Jour Automatique
Rafraîchissement des Données
- Métriques principales : Toutes les 30 secondes
- Détection de nouveaux blocs : Polling toutes les 5 secondes
- Actualisation des métriques : Automatique lors de la détection d'un nouveau bloc
Notifications
- Affichage des résultats d'ancrage en temps réel
- Messages d'erreur clairs et détaillés
- Indicateurs de chargement pour les opérations asynchrones
Fonctionnalités Avancées
Test de l'API d'Ancrage avec Filigrane
-
Saisie ou Upload
- Texte ou fichier
- Génération automatique du hash
-
Configuration du Filigrane
- Options personnalisables
- Avertissement de sécurité affiché
-
Traitement
- Scan antivirus automatique (ClamAV)
- Conversion en PDF si nécessaire
- Ajout du filigrane
- Ancrage sur la blockchain (2 transactions : original + filigrané)
- Génération du certificat PDF
- Fusion du PDF filigrané et du certificat
-
Résultats
- Affichage des hash et TXID avec liens
- Téléchargement automatique de 4 fichiers PDF
- Résultat du scan antivirus inclus
Intégration avec Mempool
- Liens cliquables vers mempool.4nkweb.com pour chaque TXID
- Liens également présents dans les PDFs de certificat
API Endpoints Utilisés
Le dashboard utilise les endpoints suivants :
Endpoints Internes
GET /api/blockchain/info: Informations sur la blockchainGET /api/blockchain/latest-block: Dernier bloc minéGET /api/wallet/balance: Solde du walletGET /api/utxo/list: Liste des UTXO (catégorisés par type)- Retourne : blocRewards, anchors, changes, fees
- Compteurs : total, availableForAnchor, confirmedAvailableForAnchor
GET /api/utxo/small-info: Informations sur les petits UTXOs (< 2500 sats) disponibles pour consolidationPOST /api/utxo/consolidate: Consolide les petits UTXOs en un gros UTXOGET /api/network/peers: Nombre de pairsGET /api/anchor/count: Nombre d'ancragesGET /api/hash/list: Liste des hash ancrésPOST /api/anchor/test: Test d'ancrage (via le dashboard)POST /api/watermark/document: Ancrage avec filigrane (via le dashboard)
Endpoints Externes
https://certificator.4nkweb.com/api/anchor/document: API d'ancragehttps://watermark.certificator.4nkweb.com/api/watermark/document: API filigranehttps://faucet.certificator.4nkweb.com/api/faucet/request: API faucethttps://mempool.4nkweb.com/fr/tx/{txid}: Explorateur de transactions
Styles et Thème
Fichier CSS : signet-dashboard/public/styles.css
- Design moderne et responsive
- Thème sombre/clair selon les préférences
- Couleurs cohérentes avec l'identité visuelle
- Accessibilité (ARIA, clavier, contraste)
JavaScript
Fichier principal : signet-dashboard/public/app.js
- Gestion de toutes les interactions
- Appels API asynchrones
- Mise à jour automatique des données
- Gestion des erreurs
- Téléchargement de fichiers
Maintenance
Vérifier que le dashboard fonctionne
# Vérifier le service
sudo systemctl status signet-dashboard
# Vérifier les logs
sudo journalctl -u signet-dashboard -f
# Tester l'accès
curl http://localhost:3020/health
Redémarrer le dashboard
sudo systemctl restart signet-dashboard