Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

104 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ClassTrack - School Management System

A comprehensive Laravel-based school management system for tracking students, teachers, courses, grades, and attendance.

πŸ“š Overview

ClassTrack is a modern web application built with Laravel and Filament that provides a complete solution for educational institutions to manage:

  • Students - Student profiles, enrollment, and academic records
  • Teachers - Faculty management and course assignments
  • Courses - Course creation, student enrollment, and capacity management
  • Grades - Academic performance tracking
  • Attendance - Student attendance records
  • User Roles - Role-based access control (Admin, Teacher, Student)

πŸš€ Features

Admin Panel

  • Manage students, teachers, and courses
  • Track attendance and grades
  • User role and permission management
  • Export data to Excel
  • Dashboard with statistics and charts

Teacher Portal

  • Manage assigned courses
  • Record student attendance
  • Enter and update grades
  • View student performance
  • Course-specific analytics

Student Portal

  • View enrolled courses
  • Check attendance records
  • Access grades and academic progress
  • Personal dashboard

πŸ› οΈ Technical Stack

  • Backend: Laravel 12.x
  • Frontend: Filament 3.x (Admin Panel UI)
  • Database: MySQL/PostgreSQL/SQLite
  • Authentication: Laravel Sanctum
  • Authorization: Spatie Laravel Permission
  • Excel Export: Maatwebsite Excel
  • Development Tools: Laravel Sail, Vite, Tailwind CSS

πŸ“¦ Requirements

  • PHP 8.2+
  • Composer
  • Node.js (for frontend assets)
  • MySQL, PostgreSQL, or SQLite
  • Laravel 12.x compatible environment

πŸ”§ Installation

1. Clone the repository

git clone https://github.com/your-repository/class-track-laravel.git
cd class-track-laravel

2. Install dependencies

composer install
npm install

3. Set up environment

Copy the example environment file and configure your database:

cp .env.example .env
php artisan key:generate

Edit the .env file with your database credentials:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=class_track
DB_USERNAME=root
DB_PASSWORD=

4. Run migrations and seeders

php artisan migrate --seed

5. Build frontend assets

npm run dev
# or for production
npm run build

6. Start the development server

php artisan serve

The application will be available at http://localhost:8000

🎯 Usage

Accessing the Application

  • Admin Panel: /admin
  • Teacher Portal: /teacher
  • Student Portal: /student

Default Credentials

After running the seeder, you can use these default credentials:

User Roles

The system includes three main user roles:

  1. Admin - Full access to all features and management tools
  2. Teacher - Access to course management, grading, and attendance
  3. Student - Access to personal academic records and course information

πŸ“‚ Project Structure

app/
β”œβ”€β”€ Filament/          # Filament admin and portal configurations
β”‚   β”œβ”€β”€ Admin/         # Admin panel resources
β”‚   β”œβ”€β”€ Teacher/       # Teacher portal resources
β”‚   └── Student/       # Student portal resources
β”œβ”€β”€ Models/            # Eloquent models
β”‚   β”œβ”€β”€ Student.php
β”‚   β”œβ”€β”€ Teacher.php
β”‚   β”œβ”€β”€ Course.php
β”‚   β”œβ”€β”€ Grade.php
β”‚   └── Attendance.php
β”œβ”€β”€ Http/              # Controllers and middleware
└── Exports/           # Excel export classes

πŸ”’ Security Features

  • Role-based access control
  • Password hashing
  • CSRF protection
  • Secure authentication with Laravel Sanctum
  • Input validation and sanitization

πŸ“Š Database Schema

Main Tables

  • users - User accounts with authentication
  • students - Student profiles
  • teachers - Teacher profiles
  • courses - Course information
  • grades - Student grades
  • attendances - Attendance records
  • course_student - Many-to-many relationship between courses and students

πŸš€ Development

Running Tests

php artisan test

Code Style

composer pint

Database Management

# Create migration
php artisan make:migration create_table_name

# Run migrations
php artisan migrate

# Rollback migrations
php artisan migrate:rollback

🎨 Customization

Themes

The application uses Tailwind CSS for styling. You can customize the theme by editing:

  • tailwind.config.js
  • resources/css/app.css

Filament Configuration

Customize the Filament admin panel by modifying files in:

  • app/Filament/Admin/Resources/
  • app/Filament/Teacher/Resources/
  • app/Filament/Student/Resources/

πŸ“ˆ Roadmap

  • Core student/teacher/course management
  • Attendance tracking system
  • Grade management
  • Role-based access control
  • Excel export functionality
  • Parent portal integration
  • Mobile application
  • API for third-party integrations
  • Advanced reporting and analytics

🀝 Contributing

Contributions are welcome! Please follow these steps:

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

πŸ“„ License

This project is open-sourced software licensed under the MIT license.

πŸ“ž Support

For issues, questions, or feature requests, please open an issue on GitHub.


Β© 2025 ClassTrack - Modern School Management System

About

No description or website provided.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages