Skip to content

Plateforme web de gestion pour Bureau des Étudiants : gestion des événements, clubs, annonces, membres et tickets, avec interface moderne et API sécurisée.

Notifications You must be signed in to change notification settings

Laghrouy/bde-platform

Repository files navigation

bde-platform

Monorepo pour la plateforme BDE.

Stack:

  • Frontend: React + TypeScript + Tailwind CSS
  • Backend: Node.js + TypeScript + Express
  • Base de données: MongoDB

⚡️ Quickstart

  • Installer Node LTS et pnpm (via corepack):
     corepack enable
     corepack prepare pnpm@latest --activate
  • Installer les dépendances à la racine:
     pnpm install
  • Lancer le frontend en mode dev:
     pnpm --filter frontend dev
  • (Backend en cours d’init — scripts à venir)

Prérequis

  • Node.js LTS (>= 18)
  • pnpm (recommandé) ou npm/yarn
  • MongoDB (local ou hébergé)

Installation

  1. Installer les dépendances à la racine (workspaces):

    • Avec pnpm (recommandé):
      pnpm install
    • Alternatives:
      npm install --workspaces
      # ou
      yarn install
  2. Variables d'environnement (placeholders, ne pas mettre de secrets dans le repo):

    • frontend/.env:
      VITE_API_BASE_URL=http://localhost:3000
    • backend/.env:
      PORT=3000
      MONGODB_URI=mongodb://localhost:27017/bde_platform
      JWT_SECRET=change-me

Commandes

  • Démarrer le backend en dev:
     pnpm --filter backend dev
  • Démarrer le frontend en dev:
     pnpm --filter frontend dev
  • Démarrer les deux (si des scripts de root sont ajoutés):
     pnpm dev

Structure du projet

.
├─ .github/             # Workflows CI/CD, templates issues/PR
├─ backend/             # Service API (Express, TypeScript)
│  ├─ src/
│  ├─ tests/
│  ├─ tsconfig.json
│  ├─ package.json
│  └─ .env.example      # Placeholders uniquement
├─ frontend/            # App web (React, TS, Tailwind)
│  ├─ src/
│  ├─ tests/
│  ├─ tsconfig.json
│  ├─ package.json
│  └─ .env.example      # Placeholders uniquement
├─ docs/                # Documentation projet
├─ package.json         # Monorepo root avec workspaces
├─ pnpm-workspace.yaml  # Déclaration des workspaces pnpm
└─ README.md

Notes

  • TypeScript est utilisé par défaut (frontend et backend).
  • Les secrets ne doivent pas être commités. Utilisez des fichiers .env locaux et des variables d'environnement en CI/CD.
  • Ajoutez un fichier LICENSE (ex: MIT) si nécessaire.

❓ Troubleshooting

  • pnpm introuvable: activez corepack puis préparez pnpm.
  • Erreurs Tailwind/PostCSS: assurez-vous que @tailwindcss/postcss et postcss sont installés et que postcss.config.js utilise des imports ESM.

About

Plateforme web de gestion pour Bureau des Étudiants : gestion des événements, clubs, annonces, membres et tickets, avec interface moderne et API sécurisée.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages