A modern and scalable Learning Management System (LMS) built with React, Vite, and pnpm.
Designed for performance, modularity, and ease of integration.
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.
- 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.
- 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
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.jsgit clone https://github.com/your-username/smart-shelf-lms.git
cd smart-shelf-lmspnpm installpnpm devpnpm build- 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).
- Manage users, resources, and system settings via the Admin Dashboard.
- Add, update, or remove books and learning materials in the Digital Shelf.
- Create and manage course content.
- Assign tasks and monitor student progress.
- Use ESLint and Prettier for consistent code formatting.
- Follow the provided ESLint configuration (eslint.config.js).
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Add Features." - Push to your branch:
git push origin feature/your-feature-name
- Open a Pull Request
We are grateful to the following contributors who have helped shape Smart Shelf LMS:
Rohit Pakhre β’ Dhiraj Yadav β’ Saloni Fojdar
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.



