Skip to content

karuhame/Library-Management

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š Library Management System

Modern full-stack web application for managing university-scale library operations – from book catalogs to student check-ins – built with a Django REST API and a Reactfront-end.

Table of Contents


✨ Features

β€’ CRUD management for books, users and borrowing cards
β€’ Advanced search & filtering with multiple fields
β€’ Real-time statistics dashboards with interactive charts
β€’ Student check-in / check-out tracking
β€’ Responsive admin and student portals
β€’ Token-based authentication & role-based authorization
β€’ Binary image storage for book covers & avatars
β€’ Docker-ready production configuration (future roadmap)


πŸ—οΈ Built With

Layer Tech Stack
Front-end React β€’ React Router β€’ Axios β€’ TailwindCSS β€’ Recharts
Back-end Python β€’ Django β€’ Django REST Framework
Database PostgreSQL
Tooling Git β€’ Prettier β€’ ESLint

πŸ“‚ Project Structure

Library-Management/
 β”œβ”€ Backend/               # Django project & apps
 β”‚   β”œβ”€ models.py          # Auto-generated ORM models (reverse engineered)
 β”‚   β”œβ”€ views.py           # REST viewsets / controllers
 β”‚   └─ ...
 β”œβ”€ Frontend/              # React client
 β”‚   β”œβ”€ App.js
 β”‚   └─ Components/
 └─ README.md

πŸš€ Getting Started

Follow these instructions to get a local development copy up and running.

Backend – Django API

# 1. Create & activate a virtual environment
python -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate

# 2. Install dependencies
pip install -r requirements.txt  # create this file or install manually

# 3. Apply migrations & create superuser
python manage.py migrate
python manage.py createsuperuser

# 4. Run development server
python manage.py runserver 8000

Frontend – React Client

cd Frontend
npm install            # or pnpm install
npm run dev            # Vite dev server on http://localhost:5173

The client is configured to proxy API requests to http://localhost:8000 during development (see vite.config.js). Adjust as needed.


🧩 Usage

  1. Sign in as admin using the account you created earlier.
  2. Navigate to Books β†’ Add to import new titles.
  3. Issue borrowing cards in Students β†’ Borrow.
  4. Monitor real-time charts in Dashboard.

Screenshots & GIF demonstrations live in the images/ directory.


πŸ—ΊοΈ Roadmap

  • User Management
  • Book Management
  • Docker Compose for one-command setup
  • CI/CD GitHub Actions workflow
  • Unit & integration test suite (Pytest + React Testing Library)

See the open issues for full list of proposed features (and known issues).


πŸ—‚οΈ Acknowledgments

Made with ❀️ by the Library-Management team.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages