The official User Interface for the Hazaribagh Library Management System. This Single Page Application (SPA) allows students to discover study centers, view dynamic pricing offers (βΉ350 vs βΉ400), and manage their seat subscriptions.
Note: This is the Frontend repository. The Backend API (Spring Boot) can be found here.
- β‘ Blazing Fast Performance: Built with Vite for instant server starts and HMR (Hot Module Replacement).
- π¨ Modern UI: Fully responsive design using Tailwind CSS following Atomic Design principles.
- π Smart Search: Real-time filtering of libraries by location (e.g., "Matwari") or price budget.
- π Student Dashboard: A dedicated space to view active seat validity ("29 Days Remaining") and payment receipts.
- π Secure Navigation: React Router implementation to manage public vs. private pages.
| Tool | Purpose |
|---|---|
| React.js (v18) | Component-based UI library |
| Vite | Next-generation build tool |
| Tailwind CSS | Utility-first styling framework |
| Axios | HTTP Client for API communication |
| Lucide React | Beautiful, consistent icons |
| React Router | Client-side routing |
Follow these steps to run the frontend locally.
Make sure you have Node.js (v18 or higher) installed.
# Clone the repository
git clone [https://github.com/your-username/hazaribagh-library-frontend.git](https://github.com/your-username/hazaribagh-library-frontend.git)
# Navigate into the folder
cd library-frontend
# Install dependencies
npm install
Bash
npm run dev
The app will start at http://localhost:5173
src/
βββ assets/ # Static images and global styles
βββ components/
β βββ common/ # Global components (Navbar, Footer)
β βββ ui/ # Reusable UI elements (LibraryCard, Buttons)
βββ context/ # Global State Management
βββ pages/ # Full Application Screens
β βββ Home.jsx # Landing Page with Search
β βββ Login.jsx # Student Authentication
β βββ Dashboard.jsx # Student Subscription View
βββ services/ # API Bridge (Axios configuration)
β βββ api.js # Centralized API endpoints
βββ App.jsx # Main Router Configuration
βββ main.jsx # Entry Point
Siddhant Kumar