Skip to content

ldsgroups225/kurama

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

229 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kurama

Kurama Logo

Plateforme d'étude intelligente pour les étudiants préparant BEPC/BAC en CÎte d'Ivoire

License: ISC Cloudflare Workers TanStack Start TypeScript

Live Demo · Documentation · Report Bug · Request Feature

📖 Description

Kurama est une plateforme Ă©ducative innovante conçue pour aider les Ă©tudiants ivoiriens Ă  prĂ©parer efficacement leurs examens du BEPC et du BAC. Notre approche combine la rĂ©pĂ©tition espacĂ©e, la gamification et un contenu pĂ©dagogique alignĂ© sur le programme du ministĂšre de l'Éducation nationale.

🎯 Objectifs Principaux

  • Apprentissage Intelligent: Utilisation de l'algorithme SM-2 de rĂ©pĂ©tition espacĂ©e pour optimiser la mĂ©morisation
  • Gamification: SystĂšme de XP, niveaux, achievements et streaks pour motiver les Ă©tudiants
  • AccessibilitĂ©: Application PWA (Progressive Web App) fonctionnant hors ligne
  • Contenu de QualitĂ©: MatĂ©riel pĂ©dagogique alignĂ© sur les programmes officiels ivoiriens

✹ FonctionnalitĂ©s ClĂ©s

🎓 PĂ©dagogie

  • RĂ©pĂ©tition EspacĂ©e: Algorithme SM-2 pour optimiser les rĂ©visions
  • Flashcards Interactives: Contenu variĂ© avec diffĂ©rents types de cartes
  • Leçons StructurĂ©es: Organisation par matiĂšres, niveaux et sĂ©ries
  • Suivi de ProgrĂšs: Statistiques dĂ©taillĂ©es sur l'apprentissage

🎼 Gamification

  • SystĂšme de XP: Points d'expĂ©rience pour chaque activitĂ©
  • Niveaux et Badges: RĂ©compenses pour les accomplissements
  • Streaks: Bonus pour l'apprentissage rĂ©gulier
  • Classements: Comparaison avec d'autres Ă©tudiants (optionnel)

đŸ“± ExpĂ©rience Utilisateur

  • Interface Responsive: AdaptĂ©e Ă  tous les appareils
  • Mode Hors Ligne: AccĂšs au contenu sans connexion internet
  • ThĂšme Sombre/Clair: Adaptation aux prĂ©fĂ©rences utilisateur
  • Performance OptimisĂ©e: Chargement rapide et navigation fluide

🔐 Authentification et SĂ©curitĂ©

  • Email OTP: Authentification par code Ă  usage unique
  • Google OAuth: Connexion via compte Google
  • Profils Utilisateurs: Personnalisation de l'expĂ©rience
  • DonnĂ©es SĂ©curisĂ©es: Protection des informations personnelles

💰 MonĂ©tisation

  • Abonnements Premium: AccĂšs Ă  du contenu avancĂ© via Polar SDK
  • Essai Gratuit: PĂ©riode d'essai pour dĂ©couvrir les fonctionnalitĂ©s premium
  • Paiements SĂ©curisĂ©s: IntĂ©gration avec des solutions de paiement reconnues

đŸ—ïž Architecture Technique

Kurama est construit comme une application monorepo avec une architecture moderne et évolutive :

kurama/
├── apps/
│   ├── user-application/     # Frontend TanStack Start
│   └── data-service/         # Backend API Hono
└── packages/
    └── data-ops/             # Utilitaires partagĂ©s

📩 Composants

Frontend (apps/user-application)

  • Framework: TanStack Start (React 19)
  • Styling: Tailwind CSS v4 avec Shadcn/UI
  • State Management: TanStack Query avec persistance
  • Authentification: Better Auth
  • PWA: Service Worker avec Workbox
  • DĂ©ploiement: Cloudflare Workers

Backend (apps/data-service)

  • Framework: Hono sur Cloudflare Workers
  • Base de DonnĂ©es: PostgreSQL avec Drizzle ORM
  • Validation: Zod schemas
  • DĂ©ploiement: Cloudflare Workers

Package Partagé (packages/data-ops)

  • Authentification: Configuration Better Auth
  • Base de DonnĂ©es: SchĂ©mas Drizzle et migrations
  • Validation: SchĂ©mas Zod partagĂ©s
  • Utilitaires: Fonctions communes

🚀 DĂ©marrage Rapide

Prérequis

  • Node.js 18+ et pnpm
  • Un compte Cloudflare
  • Une base de donnĂ©es PostgreSQL

Installation

# Cloner le repository
git clone https://github.com/yourusername/kurama.git
cd kurama

# Installer les dépendances
pnpm install

# Construire le package partagé
pnpm run build:data-ops

Développement Local

# Démarrer le frontend
pnpm run dev:kurama-frontend

# Démarrer le backend
pnpm run dev:kurama-backend

Variables d'Environnement

Créez les fichiers .env nécessaires :

# Pour le frontend
cp apps/user-application/.env.example apps/user-application/.env

# Pour le backend
cp apps/data-service/.env.example apps/data-service/.env

Configurez les variables requises :

  • DATABASE_HOST, DATABASE_USERNAME, DATABASE_PASSWORD
  • BETTER_AUTH_SECRET
  • GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET
  • POLAR_ACCESS_TOKEN (optionnel)

📚 Documentation

đŸ› ïž Stack Technique

Frontend

Backend

Développement

Déploiement

🌍 DĂ©ploiement en Production

đŸ€ Contribuer

Les contributions sont les bienvenues ! Merci de lire notre Guide de Contribution pour connaßtre les procédures.

Étapes pour Contribuer

  1. Fork le projet
  2. Créer une branche (git checkout -b feature/AmazingFeature)
  3. Committer vos changements (git commit -m 'Add some AmazingFeature')
  4. Pusher vers la branche (git push origin feature/AmazingFeature)
  5. Ouvrir une Pull Request

📄 Licence

Ce projet est sous licence ISC - voir le fichier LICENSE pour les détails.

🙏 Remerciements

  • Au ministĂšre de l'Éducation nationale de CĂŽte d'Ivoire pour les programmes officiels
  • À la communautĂ© open source pour les outils incroyables utilisĂ©s
  • À tous les testeurs bĂȘta pour leurs retours prĂ©cieux

📞 Contact


Made with ❀ in CĂŽte d'Ivoire

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages