This is a comprehensive School Management System developed as a SaaS-based application to cater to multiple schools and branches. The system provides a wide range of features for managing schools, including student management, teacher management, fees, attendance, salary, inventory, and more. Built using Laravel, Vue.js 3, React, Inertia.js, and Tailwind CSS, the system ensures a smooth and responsive experience for both administrators and users. Each module in the system is designed with full CRUD (Create, Read, Update, Delete) functionality, providing flexibility and control over the management of school-related data.
- Multi-School & Multi-Branch Support: Manage multiple schools and branches under one system.
- Sessions Management: Track and manage academic sessions and terms.
- Class Management: Organize and manage class information, including class types and sections.
- Student Management: Enroll and manage students, including student profiles, admissions, and related academic information.
- Teacher Management: Manage teacher profiles, assign teachers to classes, and track their performance.
- Fee Report & Categories: Generate and manage fee reports for students, and create and categorize various fee types.
- Attendance Report: Track attendance for both students and teachers with daily, weekly, and monthly reports.
- Employee Salary Management: Manage and generate payroll reports for employees, including salary breakdowns and adjustments.
- Inventory Management: Keep track of inventory, including school supplies, equipment, and other assets.
- Gatepass System: Create and manage gate passes for students, staff, and visitors.
- Item Categories: Categorize inventory items for easier tracking and management.
- Dashboard: A centralized dashboard providing an overview of key metrics such as student enrollment, attendance, fee collection, and inventory status.
- Task & Project Management: Manage tasks and projects related to school operations, assign responsibilities, and track progress.
- User Management: Create, manage, and assign roles to users of the system.
- Role-Based Access Control (RBAC): Assign different roles to users (admin, teacher, staff, etc.) with appropriate access rights to different modules.
- School & Branch Management: Handle multiple schools and their respective branches under one system.
- PHP 8.2+
- Laravel 11.x
- Node.js & NPM
- Composer
- MySQL / PostgreSQL
-
Clone the repository:
git clone https://github.com/adnanhyder/School-Management-System-SaaS-Based.git cd school-management-system
-
Install Composer dependencies:
composer install
-
Install NPM dependencies:
npm install npm run dev
-
Set up the environment file:
cp .env.example .env
Update the
.env
file with your database and other configurations. -
Generate the application key:
php artisan key:generate
-
Run the migrations:
php artisan migrate
-
Seed the database (optional):
php artisan db:seed
-
Serve the application:
php artisan serve
- Description: Manage academic sessions (years or terms).
- CRUD: Create, Read, Update, Delete session records.
- Description: Manage class data including sections and subjects.
- CRUD: Full control over adding, editing, and deleting classes.
- Description: Handle student profiles, admissions, and academic details.
- CRUD: Add, edit, delete student records, and search for students.
- Description: Manage teacher profiles and their assignments to classes.
- CRUD: Create, read, update, and delete teacher information.
- Description: Generate and manage student fee reports and categories.
- CRUD: Add, update, delete fee categories, and manage reports.
- Description: Track and report on attendance for students and teachers.
- CRUD: Create, edit, and delete attendance records.
- Description: Manage payroll, employee salary reports, and adjustments.
- CRUD: Add, modify, and delete salary records for employees.
- Description: Track and manage school supplies, equipment, and assets.
- CRUD: Full inventory CRUD management.
- Description: Manage gate passes for students, staff, and visitors.
- CRUD: Create, edit, and delete gate passes.
- Description: Categorize inventory items for easy management.
- CRUD: Manage categories for all inventory items.
- Description: A dynamic dashboard to view school metrics like student enrollment, attendance, fees, and inventory status.
- CRUD: Customizable widgets and real-time updates.
- Description: Manage school-related projects and tasks, assign tasks, and monitor progress.
- CRUD: Full task and project management.
- Description: Manage user accounts and roles.
- CRUD: Add, modify, and delete users.
- Description: Assign roles and permissions to users.
- CRUD: Manage user roles and access levels.
- Description: Handle multiple schools and branches under one system.
- CRUD: Create, update, and delete school and branch records.
After installation, you can access the various modules from the sidebar or dashboard. Each module offers CRUD functionality to manage data and generate reports for the respective features. The system is designed to be user-friendly with a clean, responsive UI powered by Vue.js 3 and Tailwind CSS.
- Admin Panel: For managing users, roles, schools, branches, and global settings.
- School Dashboard: For viewing metrics specific to individual schools or branches.
- Task & Project Management: Assign and track tasks and projects across schools.
This project is licensed under the MIT License. See the LICENSE file for more details.
For any questions or issues, feel free to open a GitHub issue or contact me at 12345adnan@gmail.com or visit Xpertcodes
If you find this project useful and appreciate the effort that went into it, please consider giving it a ⭐ on GitHub! Your support is much appreciated and helps to improve the project further.