A powerful CMS for managing library books and categories with CRUD functionality.
LibraryApp is a modern Content Management System (CMS) built to streamline library operations. It offers role-based access for administrators and users to perform CRUD (Create, Read, Update, Delete) operations on books and categories. With an intuitive interface and robust features, LibraryApp is perfect for managing digital or physical library collections.
- Login & Registration: Secure login and registration with validation and Toastr notifications. Admins can register using a special token (
admin123
). - Profile Management: Update user details like name with real-time feedback.
- Role-Based Access:
- Admins: Full access to all books, categories, and user statistics.
- Users: Manage only their own books and profile.
Feature | Screenshot |
---|---|
Login | ![]() |
Registration | ![]() |
Profile | ![]() |
- Statistics Overview: Displays counts of users (admin-only), books, and categories.
- Visual Analytics:
- Column chart for books per category.
- Area chart for books per user (admin-only).
- Carousel: Engaging image slideshow to enhance the dashboard's appeal.
Feature | Screenshot |
---|---|
Dashboard | ![]() |
- Create: Add books with title, description, quantity, category, cover image (JPEG/JPG/PNG, max 1MB), and PDF file (max 1MB).
- Read: View books in a card layout with category filtering. Admins see all books; users see their own.
- Update: Edit book details, including optional file replacements, with unique title validation.
- Delete: Remove books with a confirmation modal for safety.
Feature | Screenshot |
---|---|
Create Book | ![]() |
List Books | ![]() |
Update Book | ![]() |
Delete Book | ![]() |
- Create: Add new categories with unique names.
- Read: Display categories in circular cards with book counts.
- Update: Edit category names with uniqueness validation.
- Delete: Remove categories with a confirmation modal.
Feature | Screenshot |
---|---|
Create Category | ![]() |
List Categories | ![]() |
Update Category | ![]() |
Delete Category | ![]() |
- Dark/Light Mode: Toggle between themes for accessibility.
- Toastr Notifications: Real-time feedback for all actions.
- Responsive Design: Optimized for all devices using Bootstrap.
Feature | Screenshot |
---|---|
Theme Toggle | ![]() |
Notifications | ![]() |
- Laravel: Backend framework for routing, authentication, and database management.
- Bootstrap 5: Responsive UI components.
- Font Awesome: Icons for navigation and buttons.
- Highcharts & Chart.js: Data visualization for dashboard charts.
- Toastr.js: User-friendly notifications.
- jQuery: DOM manipulation and modal triggers.
- MySQL: Database for storing users, books, and categories.
-
Clone the Repository:
git clone <repository-url>
-
Install Dependencies:
composer install npm install
-
Configure Environment:
- Copy
.env.example
to.env
and set up database credentials. - Generate an application key:
php artisan key:generate
- Copy
-
Run Migrations:
php artisan migrate
-
Serve the Application:
php artisan serve
-
Access the Application:
- Visit
http://localhost:8000
. - Use
admin123
as the token during registration for admin access.
- Visit
- Admins: Manage categories, view all books, and access user statistics.
- Users: Add, edit, or delete personal books and update profile details.
- File Uploads: Ensure cover images (JPEG/JPG/PNG) and PDF files are under 1MB.
- Navigation: Use the top navbar to access Dashboard, Books, and Categories (admin-only).
- ๐ Add search functionality for books and categories.
- ๐ Implement book borrowing and return features.
- ๐ Enhance security with advanced validation and CSRF protection.
- ๐ฅ Add user management for admins.
Contributions are welcome! Please:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/YourFeature
). - Commit changes (
git commit -m 'Add YourFeature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a pull request.
Report bugs or suggest features via GitHub Issues.
This project is licensed under the MIT License.