EventPulse est une application web de gestion d'événements, permettant aux utilisateurs de créer, gérer et participer à divers événements. Cette application offre des fonctionnalités de création d'événements, de gestion des participants, de notifications, et bien plus encore.
- Pré-requis
- Installation
- Configuration
- Utilisation
- Structure du projet
- Fonctionnalités
- Contributions
- Aide
Avant de commencer, assurez-vous d'avoir les logiciels suivants installés sur votre machine :
- WAMP64 (pour le serveur web et la base de données MySQL)
- Node.js et npm
- Git
-
Clonez le dépôt de l'application :
git clone https://gitlab.com/soutenance1253225/soutenance.git
-
Déplacez les fichiers dans le répertoire
www
de WAMP :- Déplacez le dossier cloné dans
C:\wamp64\www\soutenance
.
- Déplacez le dossier cloné dans
-
Installez les dépendances du projet :
cd C:\wamp64\www\app-event npm install
Si vous n'avez pas les dépendances nécessaires installées sur votre machine, exécutez les commandes suivantes :
Installation de Babel et des presets nécessaires :
npm install @babel/core @babel/preset-env @babel/preset-react @babel/preset-typescript babel-loader --save-dev
Installation des loaders CSS et Sass :
npm install css-loader node-sass sass-loader style-loader --save-dev
Installation d'ESLint et du plugin React pour ESLint :
npm install eslint eslint-plugin-react --save-dev
Installation du loader de fichiers (file-loader) :
npm install file-loader --save-dev
Installation de HTMLWebpackPlugin pour Webpack :
npm install html-webpack-plugin --save-dev
Installation de TypeScript et des loaders associés pour Webpack :
npm install ts-loader typescript --save-dev
Installation de Webpack et de ses outils CLI et dev-server :
npm install webpack webpack-cli webpack-dev-server --save-dev
- Ouvrez phpMyAdmin via WAMP64 et créez une base de données nommée
projet_event
. - Importez le fichier SQL pour créer les tables nécessaires :
- Allez dans phpMyAdmin, sélectionnez la base de données
projet_event
. - Cliquez sur l'onglet "Importer" et sélectionnez le fichier
projet_event.sql
situé dans le répertoirebackend/database
.
- Allez dans phpMyAdmin, sélectionnez la base de données
- Créez un fichier
.env
à la racine du dossierbackend
et ajoutez les variables suivantes :DB_HOST=localhost DB_USER=root DB_PASSWORD=motdepasse DB_NAME=projet_event
Vérifiez que le fichier webpack.config.js
est correctement configuré pour le développement et la production.
- Assurez-vous que WAMP64 est en cours d'exécution.
- Ouvrez votre navigateur et accédez à
http://localhost/soutenance/backend
pour le backend et àhttp://localhost/soutenance/frontend
pour le frontend.
npm run sass
npm run watch:sass
Le projet est structuré comme suit :
app-event/
├── backend/ # Dossier backend
│ ├── config/ # Fichiers de configuration
│ ├── controllers/ # Contrôleurs
│ ├── database/ # Fichiers de base de données
│ ├── models/ # Modèles de données
│ ├── routes/ # Routes API
│ ├── utils/ # Utilitaires
│ ├── app.js # Fichier principal backend
│ └── .env # Variables d'environnement
├── frontend/ # Dossier frontend
│ ├── public/ # Fichiers publics
│ ├── src/ # Code source frontend
│ │ ├── components/ # Composants React
│ │ ├── pages/ # Pages React
│ │ ├── services/ # Services API
│ │ ├── styles/ # Styles CSS/SCSS
│ │ ├── App.js # Composant principal
│ │ └── index.js # Point d'entrée frontend
├── .gitignore # Fichiers et dossiers ignorés par Git
├── package.json # Fichier de configuration npm
├── package-lock.json # Fichier de verrouillage des dépendances npm
├── webpack.config.js # Configuration de Webpack
├── tsconfig.json # Configuration TypeScript
├── tsconfig.eslint.json # Configuration ESLint pour TypeScript
├── README.md # Documentation du projet
└── tree.txt # Structure du projet
- Création et gestion d'événements : Créez des événements avec des descriptions détaillées, des dates et des lieux.
- Gestion des participants : Ajoutez, modifiez et supprimez des participants à des événements.
- Notifications : Recevez des notifications pour les nouveaux événements, les commentaires, etc.
- Authentification : Inscription, connexion et déconnexion des utilisateurs.
- Tableau de bord : Vue d'ensemble des événements créés et des participations.
Les contributions sont les bienvenues ! Pour contribuer :
- Forkez le projet.
- Créez une branche pour votre fonctionnalité (
git checkout -b feature/ma-fonctionnalité
). - Commitez vos modifications (
git commit -am 'Ajout de ma fonctionnalité'
). - Poussez votre branche (
git push origin feature/ma-fonctionnalité
). - Ouvrez une Pull Request.
Pour toute question ou problème, veuillez ouvrir une issue sur GitHub.
Pour importer la base de données, suivez les étapes ci-dessous :
- Ouvrez phpMyAdmin via WAMP64.
- Créez une nouvelle base de données nommée
projet_event
. - Sélectionnez la base de données
projet_event
. - Cliquez sur l'onglet "Importer".
- Sélectionnez le fichier
projet_event.sql
situé dans le répertoirebackend/database
. - Cliquez sur "Exécuter" pour importer les tables et les données.
- Assurez-vous que WAMP64 est en cours d'exécution.
- Accédez à
http://localhost/soutenance/
dans votre navigateur.
app-event/
├── backend/
│ ├── config/
│ ├── controllers/
│ ├── database/
│ ├── models/
│ ├── routes/
│ ├── utils/
│ ├── app.js
│ └── .env
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ ├── styles/
│ │ ├── App.js
│ │ └── index.js
├── .gitignore
├── package.json
├── package-lock.json
├── webpack.config.js
├── tsconfig.json
├── tsconfig.eslint.json
├── README.md
└── tree.txt
Assurez-vous que tout est correctement configuré et que les dépendances sont installées. Si vous rencontrez des problèmes, n'hésitez pas à me le faire savoir.