# đ Diki-Diki
Plateforme de compétitions artistiques africaines avec vote Mobile Money en temps réel.
## Disciplines
đ Danse · đ€ Chant · đž Instrument · đïž Acapella · đ Humour · đ PoĂ©sie
## Types de compétition
- **Duo** : 2 participants, chacun avec sa vidéo
- **Groupe** : jusqu'Ă 4 groupes Ă 4 membres
## Stack
| Couche | Technologie |
|--------|-------------|
| Frontend | Next.js 14 + TypeScript + Tailwind |
| Backend | Node.js + Express + TypeScript |
| Base de données | Supabase (PostgreSQL + Realtime + Auth + Storage) |
| Paiement | CinetPay (Orange Money, Wave, MTN, Moov, Celtiis) |
| SMS | Africa's Talking |
| Push | Firebase FCM |
| Deploy Frontend | Vercel |
| Deploy Backend | Railway |
| CDN | Cloudflare |
## Installation rapide
```bash
# 1. Cloner
git clone
github.com
cd dkdk
# 2. Backend
cd backend
npm install
cp .env.example .env # Remplir les variables
npm run dev #
localhost
# 3. Frontend (autre terminal)
cd frontend
npm install
cp .env.example .env.local # Remplir les variables
npm run dev #
localhost
# 4. Base de données
# Coller supabase/migrations/001_pac_schema.sql dans Supabase SQL Editor
```
## Structure du projet
```
dkdk/
âââ backend/
â âââ src/
â â âââ controllers/ Logique mĂ©tier
â â âââ middleware/ Auth JWT, erreurs, rate-limit
â â âââ routes/ Endpoints API REST
â â âââ services/ Vote, paiement, vidĂ©o, SMS, notifications
â â âââ utils/ Helpers
â âââ config/ Supabase, Redis, Firebase
â âââ package.json
âââ frontend/
â âââ app/
â â âââ auth/ Connexion + inscription
â â âââ contests/ Liste des compĂ©titions
â â âââ vote/ Page de vote avec pouces animĂ©s
â â âââ submit/ DĂ©pĂŽt vidĂ©o (3 Ă©tapes)
â â âââ profile/ Profil candidat + score live
â â âââ recharge/ Recharge Mobile Money
â â âââ notifications/ âŠ