Skip to content

Latest commit

Β 

History

89 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Smart Shelf LMS - Library Management System.

A modern and scalable Learning Management System (LMS) built with React, Vite, and pnpm.
Designed for performance, modularity, and ease of integration.


Status

License: MIT React Vite Axios pnpm


πŸ“– About Smart Shelf LMS

Smart Shelf LMS is a modern, lightweight, and modular Learning Management System crafted to streamline the way educational institutions manage learning resources and user interactions.

It combines the power of React, Vite, and pnpm to deliver a fast and developer-friendly workflow, while also offering a clean architecture that makes the system scalable and easy to maintain.

The platform is designed with flexibility in mind:

  • For administrators – manage books, resources, and user access.
  • For teachers – organize course content and assignments.
  • For students – access digital shelves, explore learning materials, and interact in a simple UI.

Smart Shelf LMS ensures a seamless user experience with light/dark theme support, component-driven UI design, and an API-first approach that makes backend integration effortless.


πŸ“Έ Sneak Peek

Dashboard

Dashboard

Books Page

Books Page

Members Page

Members Page

πŸŽ₯ App Showcase

Gif


πŸš€ Features

  • Admin-Based Access – Secure and role-driven platform.
  • Digital Shelf – Organize and manage books, notes, and other resources.
  • Centralized State Management – Powered by React Context API for predictable and efficient state handling.
  • Reusable Component Architecture – Clean and modular UI components for faster development.
  • API-First Design – Easy integration with REST APIs using Axios.
  • Light & Dark Mode – User preference support with persistence.
  • Clean Architecture – A modular folder structure for maintainability and scalability.
  • Performance-Optimized – Powered by Vite and pnpm for fast builds and package management.

πŸ›  Tech Stack

  • Frontend: React 19.1.1, Vite
  • State Management: Context API (Redux-ready)
  • HTTP Client: Axios
  • Package Manager: pnpm
  • Styling: Tailwind CSS / CSS Modules
  • Linting & Formatting: ESLint, Prettier

πŸ“‚ Project Structure

smart-shelf/
β”œβ”€β”€ public/                # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/               # Application configuration
β”‚   β”œβ”€β”€ assets/            # Images, icons, fonts
β”‚   β”œβ”€β”€ components/        # Shared UI components
β”‚   β”œβ”€β”€ contexts/          # Global state management
β”‚   β”œβ”€β”€ modules/           # Feature-specific modules
β”‚   β”œβ”€β”€ pages/             # Route-level views
β”‚   β”œβ”€β”€ router/            # Central routing configuration
β”‚   β”œβ”€β”€ App.jsx            # Root component
β”‚   β”œβ”€β”€ index.css          # Global styles
β”‚   └── main.jsx           # Application entry point
β”œβ”€β”€ .gitignore
β”œβ”€β”€ eslint.config.js
β”œβ”€β”€ index.html
β”œβ”€β”€ LICENSE
β”œβ”€β”€ package.json
β”œβ”€β”€ pnpm-lock.yaml
β”œβ”€β”€ pnpm-workspace.yaml
└── vite.config.js

πŸ› οΈ Installation & Setup

1. Clone the Repository

git clone https://github.com/your-username/smart-shelf-lms.git
cd smart-shelf-lms

2. Install Dependencies

pnpm install

3. Run the development server

pnpm dev

4. Building for Production

pnpm build

πŸ“š Usage

πŸ”‘ Access the Application

  • Open http://localhost:5173 in your browser after running the development server.
  • Log in with the appropriate credentials based on your role (Admin, Teacher, or Student).

πŸ› οΈ Admin Features

  • Manage users, resources, and system settings via the Admin Dashboard.
  • Add, update, or remove books and learning materials in the Digital Shelf.

πŸ‘©β€πŸ« Teacher Features

  • Create and manage course content.
  • Assign tasks and monitor student progress.

πŸ› οΈ Development Guidelines

πŸ“ Code Style

  • Use ESLint and Prettier for consistent code formatting.
  • Follow the provided ESLint configuration (eslint.config.js).

🀝 Contributing

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature-name
  3. Commit your changes:
    git commit -m "Add Features."
  4. Push to your branch:
    git push origin feature/your-feature-name
  5. Open a Pull Request

πŸ‘₯ Contributors

We are grateful to the following contributors who have helped shape Smart Shelf LMS:

Rohit Pakhre β€’ Dhiraj Yadav β€’ Saloni Fojdar

πŸ“„ License

This project is licensed under the MIT License – see the LICENSE file for details.

You are free to use, modify, and distribute this software in both personal and commercial projects, provided that the original copyright and license notice are included in all copies or substantial portions of the software.

About

This respository is about the Library Management System - LMS

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Used by

Contributors

Languages