Skip to content

Torikul-048/School_Management_System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

17 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ School Management System

School Management System Logo

A comprehensive, modern school management solution built with Laravel

Laravel PHP Tailwind MySQL


πŸ“‹ Table of Contents


πŸ“– About

School Management System is a comprehensive web-based application designed to streamline and automate school operations. Built with Laravel 12 and modern web technologies, it provides an intuitive interface for managing students, teachers, classes, attendance, examinations, fees, library, and much more.

🎯 Project Goals

  • Digitalize school administration processes
  • Improve communication between stakeholders
  • Provide real-time analytics and reporting
  • Ensure data security and privacy
  • Create a user-friendly experience for all roles

✨ Features

🏫 Core Modules

πŸ“š Student Management

  • Student registration and profile management
  • Online admission form with document upload
  • Roll number and admission number generation
  • Student ID card generation
  • Bulk student import/export
  • Student promotion and transfer
  • Academic history tracking

πŸ‘¨β€πŸ« Teacher & Staff Management

  • Teacher profile management
  • Subject and class assignments
  • Workload management
  • Performance tracking
  • Teacher ID card generation
  • Leave management system
  • Salary structure and payroll

πŸ“– Academic Management

  • Class and section management
  • Subject management with elective options
  • Timetable generation (manual and auto)
  • Academic year management
  • Curriculum management for Classes 1-10
  • Multiple academic groups (Science, Humanities, Commerce)

βœ… Attendance System

  • Daily attendance marking
  • Student attendance tracking
  • Teacher attendance management
  • Attendance reports (daily, monthly, yearly)
  • Leave request management
  • SMS/Email notifications for absences

πŸ“ Examination & Grading

  • Exam schedule management
  • Marks entry and management
  • Grade calculation system
  • Report card generation (PDF)
  • Progress tracking
  • Result publication
  • Mark sheets and transcripts

πŸ’° Finance & Accounts

  • Fee structure management
  • Fee collection tracking
  • Online payment integration ready
  • Receipt generation
  • Scholarship management
  • Expense tracking
  • Invoice management
  • Financial reports (income, expense, balance)
  • Fee defaulter tracking
  • Student ledger

πŸ“š Library Management

  • Book cataloging with ISBN
  • Book issue and return
  • Fine calculation for overdue books
  • Digital library support
  • Book reservation system
  • Barcode scanning support
  • Library reports and statistics

πŸ’¬ Communication System

  • Internal messaging system
  • Announcements and notices
  • Event management
  • Notice board
  • Parent-teacher communication
  • Email notifications
  • SMS integration ready

🎨 Additional Features

  • News management
  • Photo gallery
  • Contact form management
  • Complaint/feedback system
  • Dashboard with analytics
  • Role-based access control
  • Activity logs
  • Advanced search
  • Data export (CSV, Excel, PDF)

πŸ‘₯ Multi-Role Portal

Admin Portal

  • Complete system control
  • User management
  • Reports and analytics
  • System settings
  • Data backup

Teacher Portal

  • Class and subject management
  • Attendance marking
  • Marks entry
  • Student progress tracking
  • Class materials upload
  • Assignment management
  • Communication tools

Student Portal

  • Personal dashboard
  • Attendance view
  • Exam results
  • Timetable
  • Assignments
  • Fee status
  • Library books issued

Parent Portal

  • Child's progress tracking
  • Attendance monitoring
  • Exam results view
  • Fee payment
  • Teacher communication
  • Event calendar

Accountant Portal

  • Fee management
  • Payment processing
  • Financial reports
  • Invoice generation

Librarian Portal

  • Book management
  • Issue/return tracking
  • Fine management
  • Library reports

πŸ›  Tech Stack

Backend

  • Framework: Laravel 12.33.0
  • PHP Version: 8.2.12
  • Database: MySQL
  • Authentication: Laravel Breeze
  • Authorization: Spatie Laravel Permission

Frontend

  • CSS Framework: Tailwind CSS
  • JavaScript: Alpine.js
  • Icons: Heroicons
  • Charts: Chart.js (ready to integrate)
  • Build Tool: Vite

Additional Libraries

  • PDF Generation: DomPDF
  • Excel Export: Laravel Excel (ready to integrate)
  • Image Processing: Intervention Image (ready to integrate)
  • Queue Management: Laravel Queue

πŸ“¦ Installation

Prerequisites

  • PHP >= 8.2
  • Composer
  • Node.js & NPM
  • MySQL/MariaDB
  • Git

Step-by-Step Installation

  1. Clone the repository

    git clone https://github.com/Torikul-048/School_Management_System.git
    cd School_Management_System
  2. Install PHP dependencies

    composer install
  3. Install NPM dependencies

    npm install
  4. Create environment file

    copy .env.example .env
  5. Generate application key

    php artisan key:generate
  6. Configure database

    Edit .env file and set your database credentials:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=school_management
    DB_USERNAME=root
    DB_PASSWORD=your_password
  7. Run migrations and seeders

    php artisan migrate --seed
  8. Create storage link

    php artisan storage:link
  9. Build assets

    npm run build
  10. Start development server

    php artisan serve
  11. Access the application

    Open your browser and visit: http://localhost:8000


βš™οΈ Configuration

Default Admin Credentials

After running seeders, use these credentials to login:

⚠️ Security: Change default password immediately after first login!

File Storage

Configure your file storage in .env:

FILESYSTEM_DISK=public

Mail Configuration

Set up email service (Gmail, Mailgun, etc.):

MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=your-email@gmail.com
MAIL_PASSWORD=your-app-password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@yourschool.com
MAIL_FROM_NAME="School Management System"

Queue Configuration

For background job processing:

php artisan queue:work

πŸ‘₯ User Roles

1. Admin (Super Admin)

  • Full System Access
  • User management
  • All CRUD operations
  • System settings
  • Reports and analytics

2. Teacher

  • Class and subject management
  • Attendance marking
  • Marks entry
  • Student progress tracking
  • Communication with students/parents

3. Student

  • View personal information
  • Check attendance
  • View exam results
  • Access assignments
  • View timetable

4. Parent

  • Monitor child's progress
  • View attendance and results
  • Communicate with teachers
  • Pay fees online

5. Accountant

  • Fee management
  • Payment processing
  • Financial reports
  • Invoice generation

6. Librarian

  • Book management
  • Issue/return tracking
  • Fine collection
  • Library reports

πŸ“Έ Screenshots

Public Website

Homepage Modern, responsive homepage with news ticker and information sections

Admin Dashboard

Admin Dashboard Comprehensive dashboard with real-time analytics and quick actions

Student Management

Student Management Easy-to-use student management interface

Attendance System

Attendance Quick and efficient attendance marking system

Report Card

Report Card Professional report card generation


πŸ—ƒ Database Schema

Key Tables

  • users - System users with authentication
  • students - Student information
  • teachers - Teacher details
  • classes - Class information
  • sections - Class sections
  • subjects - Subject details
  • attendances - Daily attendance records
  • exams - Examination details
  • marks - Student marks
  • fee_structures - Fee configuration
  • fee_collections - Fee payment records
  • books - Library books
  • book_issues - Book issue records
  • contacts - Contact form submissions
  • announcements - School announcements
  • events - School events
  • notices - Notice board items

ER Diagram

[View complete ER diagram](docs/database-schema.png)

πŸ“š API Documentation

Authentication

All API endpoints require authentication via Laravel Sanctum tokens.

Endpoints

GET    /api/students           - List all students
POST   /api/students           - Create new student
GET    /api/students/{id}      - Get student details
PUT    /api/students/{id}      - Update student
DELETE /api/students/{id}      - Delete student

GET    /api/attendance         - Get attendance records
POST   /api/attendance         - Mark attendance

GET    /api/exams              - List exams
GET    /api/results/{student}  - Get student results

View complete API documentation


🀝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Code Style

  • Follow PSR-12 coding standards
  • Write meaningful commit messages
  • Add comments for complex logic
  • Update documentation

πŸ“„ License

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


πŸ’¬ Support

Get Help

Useful Links


πŸ™ Acknowledgments

  • Laravel Framework
  • Tailwind CSS
  • Spatie Laravel Permission
  • All open-source contributors

πŸ“Š Project Status

  • βœ… Core Features: Complete
  • βœ… Student Management: Complete
  • βœ… Teacher Management: Complete
  • βœ… Attendance System: Complete
  • βœ… Examination Module: Complete
  • βœ… Finance Module: Complete
  • βœ… Library Module: Complete
  • βœ… Communication System: Complete
  • πŸ”„ Mobile App: In Progress
  • πŸ“‹ Advanced Analytics: Planned

Made with ❀️ for Better Education Management

Β© 2025 School Management System. All rights reserved.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published