Gestion de Bibliotique
Home
API
  • Client > Authentification
  • Client > Profile
  • Client > CRUD
  • Livres
  • Emprunts
  • Categories
Team
  • Nassim MZILI
  • Abderrahim El Ouali
Home
API
  • Client > Authentification
  • Client > Profile
  • Client > CRUD
  • Livres
  • Emprunts
  • Categories
Team
  • Nassim MZILI
  • Abderrahim El Ouali
GitHub
GitLab
    • Get Started
    • API
      • Clients
        • Auth
          • Register a new client
          • Login a client
          • Logout a client
        • Profile
          • Update client profile
          • Update client password
          • Get client details
          • Get all emprunts for a client
        • CRUD (Admin)
          • Get all clients
          • Get a client by ID
          • Update a client
          • Delete a client
      • Livres
        • Get all books
        • Get a book by ID
        • Add a new book
        • Update a book
        • Delete a book
      • Emprunts
        • Create a new emprunt
        • Get emprunt by ID
        • Update an emprunt
        • Delete an emprunt
        • Get all emprunts
        • Get all emprunts for a specific client
        • Return a book
      • Categories
        • Get all categories
        • Get a category by ID
        • Add a new category
        • Update a category
        • Delete a category

    Get Started

    Gestion De Bibliotique#

    Description#

    Un système de gestion de bibliothèque full-stack construit avec la stack MERN (MongoDB, Express.js, React, Node.js). Ce projet permet aux utilisateurs de gérer les livres, les clients, les emprunts et les catégories dans une bibliothèque. Il inclut des fonctionnalités d'authentification, de contrôle d'accès basé sur les rôles, et une interface front-end réactive.

    Navigation#

    Fonctionnalités
    Fonctionnalités Client
    Fonctionnalités Admin
    Technologies Utilisées
    Back-End
    Outils
    Utilisation
    Prérequis
    Installation
    API

    Fonctionnalités#

    Fonctionnalités Client#

    Authentification : Inscription, connexion et déconnexion.
    Gestion du Profil : Mettre à jour les détails du client (nom, email, adresse).
    Gestion des Livres :
    Parcourir les livres disponibles.
    Vérifier la disponibilité des livres.
    Gestion des Emprunts :
    Emprunter des livres (créer des emprunts).
    Retourner des livres.
    Voir l'historique des emprunts.

    Fonctionnalités Admin#

    Gestion des Livres :
    Ajouter, mettre à jour et supprimer des livres.
    Gérer les quantités de livres.
    Gestion des Catégories :
    Ajouter, mettre à jour et supprimer des catégories.
    Gestion des Clients :
    Voir et gérer les comptes clients.
    Gestion des Emprunts :
    Voir tous les emprunts.
    Mettre à jour le statut des emprunts.

    Technologies Utilisées#

    Back-End#

    Node.js - Environnement d'exécution JavaScript pour le serveur.
    Express.js - Framework web pour construire des API RESTful.
    MongoDB - Base de données NoSQL pour stocker les données.
    Mongoose - ODM (Object Data Modeling) pour MongoDB.
    JWT (JSON Web Tokens) - Authentification et autorisation.

    Outils#

    Postman - Test des API.
    Git - Contrôle de version.

    Utilisation#

    Prérequis#

    Node.js (v16 ou supérieur)
    MongoDB (instance locale ou cloud)
    Git (optionnel)

    Installation#

    1.
    Cloner le Dépôt
    2.
    Installer les Dépendances
    Back-End :
    3.
    Configurer les Variables d'Environnement
    Créez un fichier .env dans le dossier server :
    PORT=5000
    
    # MONGO_URI=your_mongodb_connection_uri
    MONGO_URI=mongodb://localhost:27017/bibliotheque
    
    JWT_SECRET=your_jwt_secret_key
    4.
    Démarrer le Serveur Back-End
    5.
    Accéder à l'Application
    Back-End : L'API est accessible sur http://localhost:5000/api.

    Next
    Register a new client
    Built with