Skip to content

A full-featured Student Management System built with PHP and SQLite, including authentication, role-based dashboards, student & professor management, class schedules, file uploads, pagination, and image preview handling. Lightweight, fast, and deployable without Node.js dependencies.

License

Notifications You must be signed in to change notification settings

Ashawn0/student-management-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ“ University Course Management System

Laravel PHP Bootstrap License

A comprehensive, multi-role academic platform for seamless interaction between professors and students.

Features โ€ข Screenshots โ€ข Installation โ€ข Docs


๐Ÿ“– Project Overview

The University Course Management System is a modern, robust web application designed to digitize and streamline the academic experience. It serves as a centralized hub where Professors can manage their curriculum and Students can track their academic journey.

Built with a focus on usability, performance, and security, the platform eliminates administrative friction, allowing users to focus on what matters most: education.

๐Ÿš€ Key Highlights

  • Role-Based Access Control: Distinct, secure environments for Professors and Students.
  • Dynamic Scheduling: Interactive class timetables.
  • Content Management: Full suite of tools for course creation, assignments, and resource sharing.

โœจ Features

๐Ÿ” Authentication & Security

  • Multi-Guard System: Dedicated authentication guards for professor and student roles ensure strict data separation.
  • Secure Registration: Streamlined onboarding process for new users.

๐Ÿ‘จโ€๐Ÿซ For Professors

  • Dashboard Command Center: Real-time overview of active courses, student enrollment stats, and pending grading tasks.
  • Course Management: Create and configure courses with detailed metadata (credits, terms, visibility).
  • Content Delivery: Structure courses with Modules and Lessons.
  • Assessment Tools: Create assignments, set deadlines, and grade submissions.

๐Ÿ‘จโ€๐ŸŽ“ For Students

  • Personalized Dashboard: Instant access to enrolled courses and upcoming deadlines.
  • Progress Tracking: Monitor assignment status and grades.
  • Resource Access: Download course materials and lecture notes.

๐Ÿ“… Academic Tools

  • Interactive Schedule: Color-coded weekly timetable for managing lectures and labs.
  • Profile Management: Self-service account updates.

๐Ÿ“ธ Screenshots

๐Ÿ  Landing & Authentication

Landing Page

Modern, welcoming landing page

Role Selection

Clear role-based login selection

๐Ÿ“Š Dashboards

Professor Dashboard

Professor Dashboard: Analytics and Quick Actions

Student Dashboard

Student Dashboard: Enrolled Courses and Deadlines

๐Ÿ› ๏ธ Course Management

Course Creation

Intuitive Course Creation Interface

Class Schedule

Interactive Weekly Class Schedule


๐Ÿ› ๏ธ Tech Stack

This project leverages a modern, industry-standard stack to ensure reliability and scalability.

Component Technology Description
Backend Laravel 12.x Robust PHP framework for secure API and logic.
Language PHP 8.2+ High-performance server-side scripting.
Frontend Bootstrap 5 Responsive, mobile-first UI framework.
Templating Blade Powerful, component-based view engine.
Database SQLite / MySQL Flexible data storage (SQLite for dev, MySQL for prod).
Scripting Vanilla JS Lightweight client-side interactivity.

๐Ÿ“ฅ Installation Guide

Follow these steps to get a local copy up and running.

Prerequisites

  • PHP >= 8.2
  • Composer
  • Git

1. Clone the Repository

git clone https://github.com/Ashawn0/student-management-system.git
cd student-management-system

2. Install Dependencies

composer install

3. Configure Environment

cp .env.example .env

Edit .env to configure your database settings if not using the default SQLite.

4. Generate Key

php artisan key:generate

5. Setup Database

# Create SQLite database (Windows PowerShell)
if (!(Test-Path database/database.sqlite)) { New-Item -ItemType File database/database.sqlite }

# Run migrations and seeders
php artisan migrate --seed

6. Launch Application

php artisan serve

Visit http://localhost:8000 in your browser.

Default Credentials (if seeded):

  • Professor: professor@example.com / password
  • Student: student@example.com / password

๐Ÿ—„๏ธ Database Schema

The database schema is normalized to handle complex academic relationships efficiently.

Core Tables

  • users: Unified user table with role discrimination.
  • courses: Stores course details, linked to an instructor.
  • course_enrollments: Many-to-Many pivot between Students and Courses.
  • class_schedules: Stores timetable slots with day/time/room data.
  • assignments: Assessment tasks linked to courses.
  • submissions: Student work linked to assignments.

๐Ÿ“‚ Folder Structure

laravel-course-system/
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ Http/Controllers/    # Application Logic
โ”‚   โ”œโ”€โ”€ Models/              # Eloquent ORM Models
โ”‚   โ””โ”€โ”€ View/Components/     # Blade Components
โ”œโ”€โ”€ database/
โ”‚   โ”œโ”€โ”€ migrations/          # Schema Definitions
โ”‚   โ””โ”€โ”€ seeders/             # Dummy Data Generators
โ”œโ”€โ”€ public/
โ”‚   โ””โ”€โ”€ screenshots/         # Project Images
โ”œโ”€โ”€ resources/
โ”‚   โ””โ”€โ”€ views/               # UI Templates
โ””โ”€โ”€ routes/
    โ””โ”€โ”€ web.php              # Route Definitions

๐Ÿ”ฎ Future Improvements

  • Real-time Chat: WebSocket-powered messaging between students and professors.
  • Attendance System: QR code-based attendance tracking.
  • Gradebook Export: PDF/Excel export for course grades.
  • Dark Mode: System-wide dark theme support.


๐Ÿ“„ License

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


๐Ÿ‘ฅ Credits

Lead Developer: AABHUSHAN GYAWALI

Special thanks to the Laravel and Bootstrap communities for their excellent documentation and resources.

Built with โค๏ธ for Education

About

A full-featured Student Management System built with PHP and SQLite, including authentication, role-based dashboards, student & professor management, class schedules, file uploads, pagination, and image preview handling. Lightweight, fast, and deployable without Node.js dependencies.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published