Skip to content

AhamedGhalib/Library-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š Library Management System (Django)

A web-based Library Management System built with Django that handles book inventory, user authentication, and a structured borrowing workflow with Admin oversight.

🌟 Key Features

  • User Authentication: Secure Registration and Login system using Django's AuthenticationForm.

  • Book Discovery: A home page gallery where users can view available books and their current status.

  • Borrowing Workflow:

  • Request to Borrow: Users can request a book; the book is immediately marked as unavailable.

  • Admin Approval: Admins must approve the borrow request before the user is officially "borrowing" the book.

  • Return Workflow:

  • Request to Return: Users send a return request once finished with a book.

  • Final Approval: Admins verify the return, which then marks the book as "Available" for others to borrow again.

  • User Dashboard: A personal space for users to track their borrowing history, request statuses, and admin feedback.

  • Admin Panel: A customized Django Admin interface with bulk actions to approve or reject requests efficiently.


πŸ› οΈ Tech Stack

  • Backend: Django 5.0+ (Python)
  • Database: SQLite (Development)
  • Frontend: Django Templates (HTML/CSS)

πŸš€ Getting Started

  1. Clone the repository:
git clone https://github.com/yourusername/library-management-system.git
  1. Install dependencies:
pip install django
  1. Apply migrations:
python manage.py makemigrations
python manage.py migrate
  1. Create a Superuser (Admin):
python manage.py createsuperuser
  1. Run the server:
python manage.py runserver

πŸ“‚ Project Structure

  • models.py: Defines Book and Loan (with states: Pending, Approved, Return Pending, Returned).
  • views.py: Handles the logic for borrowing, returning, and dashboard filtering.
  • admin.py: Customizes the admin dashboard with "Approve Borrow" and "Approve Return" actions.

πŸ“ Future Enhancements

  • Email notifications for approval/rejection.
  • Fine system for overdue books.
  • Search and filter functionality for the book gallery.

Would you like me to add a specific section about how the CSRF security or the "Return Request" logic works under the hood?

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors