Skip to content

Proofchains est une plateforme Web3 utilisant la blockchain Cardano pour émettre et vérifier des diplômes académiques sous forme de NFT immuables, garantissant transparence et authenticité pour les institutions éducatives et leurs diplômés.

License

Notifications You must be signed in to change notification settings

alainpaluku/proofchains

Repository files navigation

🔐 PROOFCHAIN

Plateforme de certification académique sur blockchain Cardano

Émettez, vérifiez et authentifiez des diplômes sous forme de NFT immuables et infalsifiables.

Cardano Next.js TypeScript


📦 Applications

App Port URL Code
🏠 Landing (+ Verifier) 3003 proofchains.org apps/landing
🎓 Issuer 3001 issuer.proofchains.org apps/issuer
⚙️ Admin 3002 admin.proofchains.org apps/admin

🚀 Démarrage rapide

# Installation
npm install

# Développement (toutes les apps)
npm run dev

# App spécifique
npm run issuer:dev
npm run admin:dev

🏗️ Architecture

Dossier Description
apps/landing Landing page + Vérification de diplômes
apps/issuer Portail institutions
apps/admin Dashboard administration
packages/ui Composants React partagés
packages/shared Services, hooks, types
packages/chain SDK Cardano (mint, verify)
scripts Scripts de déploiement
supabase Schéma SQL

🎨 Stack technique

Catégorie Technologies
Frontend Next.js 13, React 18, Tailwind CSS
Language TypeScript 5.3
Blockchain Cardano, Lucid, Blockfrost API
Wallets Eternl, Lace
Storage IPFS via Pinata
Database Supabase (PostgreSQL)
Auth Supabase Auth
Monorepo Turborepo
Deploy Vercel

💳 Wallets supportés

Wallet Type Statut
Eternl Extension Desktop ✅ Supporté
Eternl Mobile (iOS/Android) ✅ Supporté
Lace Extension Desktop ✅ Supporté

Sur mobile, l'app redirige vers le navigateur dApp intégré d'Eternl.

Voir l'implémentation : packages/ui/src/hooks/useWallet.ts


🔧 Commandes

Voir package.json pour toutes les commandes.

Développement

npm run dev              # Toutes les apps
npm run issuer:dev       # Issuer uniquement
npm run admin:dev        # Admin uniquement
npm run landing:dev      # Landing uniquement (inclut la vérification)

Build & Lint

npm run build            # Build production
npm run lint             # ESLint
npm run clean            # Nettoyer les builds

Déploiement Vercel

Voir scripts/deploy.ps1

npm run deploy           # Preview (toutes les apps)
npm run deploy:prod      # Production (toutes les apps)

⚙️ Configuration

Créer un fichier .env à la racine (voir .env.example pour le format) :

# === Supabase ===
NEXT_PUBLIC_SUPABASE_URL=https://xxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJxxx...

# === Cardano / Blockfrost ===
NEXT_PUBLIC_BLOCKFROST_PROJECT_ID=preprodXXX
NEXT_PUBLIC_BLOCKFROST_NETWORK=preprod

# === IPFS / Pinata ===
PINATA_JWT=eyJxxx...

# === URLs des apps ===
NEXT_PUBLIC_LANDING_URL=https://proofchains.org
NEXT_PUBLIC_ISSUER_URL=https://issuer.proofchains.org
NEXT_PUBLIC_ADMIN_URL=https://admin.proofchains.org

⚠️ Ne jamais commiter les fichiers .env


✨ Fonctionnalités

Pour les institutions (Issuer)

  • 🎓 Émission de diplômes NFT sur Cardano
  • 📋 Gestion des étudiants
  • 📊 Dashboard avec statistiques
  • 🔐 Authentification sécurisée

Pour la vérification (intégré dans Landing)

  • 🔍 Recherche par ID document ou Asset ID
  • ✅ Vérification blockchain en temps réel
  • 📄 Affichage des métadonnées du diplôme

Administration (Admin)

  • ✅ Validation KYC des institutions
  • 📊 Statistiques globales
  • 👥 Gestion des utilisateurs
  • 💳 Gestion des abonnements

🔒 Sécurité

Voir .gitignore - Fichiers exclus de Git :

  • .env, .env.local
  • .vscode/
  • node_modules/

📄 License

MIT License - Voir LICENSE

About

Proofchains est une plateforme Web3 utilisant la blockchain Cardano pour émettre et vérifier des diplômes académiques sous forme de NFT immuables, garantissant transparence et authenticité pour les institutions éducatives et leurs diplômés.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published