Skip to content

FulbertDev-AI/Nova

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

NOVA+ - Plateforme d'Apprentissage et de Défis Quotidiens

Plateforme fullstack moderne permettant à des apprenants de suivre des défis d'apprentissage quotidiens, à des professeurs de créer des devoirs avec délai de soumission, et à un administrateur de superviser l'ensemble.

🛠 Stack Technique

  • Frontend: React.js (Create React App), JavaScript, Tailwind CSS, Framer Motion
  • Backend: Laravel 12 (API REST)
  • Base de données: MySQL
  • Authentification: Laravel Sanctum
  • Gestion d'état: Context API
  • Appels API: Axios
  • Internationalisation: i18n (Français/Anglais)

🎨 Design

Design minimaliste et épuré inspiré d'Apple avec :

  • Espaces généreux
  • Bordures arrondies (rounded-xl)
  • Effets de transparence subtils
  • Micro-interactions avec Framer Motion
  • Palette de couleurs : Turquoise/Cyan (#00C2CB) comme couleur primaire

📋 Fonctionnalités

Pour les Étudiants/Autres

  • Création de challenges personnalisés
  • Soumission de rapports quotidiens avant 23h59
  • Suivi de progression avec statistiques
  • Visualisation des rapports soumis

Pour les Professeurs

  • Création d'événements avec code unique
  • Partage de liens pour les étudiants
  • Visualisation des soumissions
  • Téléchargement des fichiers soumis

Pour les Administrateurs

  • Statistiques globales de la plateforme
  • Liste des utilisateurs
  • Vue d'ensemble de l'activité

🚀 Installation

Prérequis

  • PHP 8.2+
  • Composer
  • Node.js 18+
  • MySQL

Backend (Laravel)

cd backend
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan serve

Le backend sera accessible sur http://localhost:8000

Frontend (React)

cd frontend
npm install
npm start

Le frontend sera accessible sur http://localhost:3000

Configuration

Créez un fichier .env dans le dossier frontend avec :

REACT_APP_API_URL=http://localhost:8000/api

📁 Structure du Projet

Nova+/
├── backend/              # API Laravel
│   ├── app/
│   │   ├── Http/Controllers/API/
│   │   └── Models/
│   ├── database/migrations/
│   └── routes/api.php
├── frontend/             # Application React
│   ├── src/
│   │   ├── components/   # Composants réutilisables
│   │   ├── contexts/     # Context API (Auth, Language)
│   │   ├── pages/        # Pages de l'application
│   │   ├── config/        # Configuration (Axios)
│   │   ├── i18n/          # Traductions
│   │   └── utils/         # Utilitaires
│   └── public/
└── README.md

🔐 Authentification

L'authentification utilise Laravel Sanctum. Les tokens sont stockés dans le localStorage du navigateur.

🌍 Internationalisation

L'application supporte le Français et l'Anglais. Le sélecteur de langue est disponible dans la barre de navigation.

📝 Règles Métier

  • Soumission de rapports: Les rapports doivent être soumis avant 23h59 (heure locale). La vérification est effectuée côté backend.
  • Calcul du score: Le taux de réussite = (jours valides / durée totale) × 100
  • Événements: Les soumissions sont désactivées après la date limite

🧪 Tests

Pour tester l'application :

  1. Créez un compte avec le rôle "Étudiant" ou "Autre"
  2. Créez un challenge
  3. Soumettez des rapports quotidiens
  4. Créez un compte "Professeur" pour créer des événements
  5. Utilisez le code unique pour accéder aux événements

📧 Contact

📄 Licence

Ce projet est un MVP développé pour des besoins éducatifs.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages