Skip to content

mustadafinshimanto/School-Management-System-Showcase

Repository files navigation

School Management System

Developer: Mustadafin Shimanto
Project Status: Portfolio Showcase

Note

This project is a showcase of Live Coding where the entire application was created using AI. The development was conducted using the Antigravity IDE.

A comprehensive, Django-based School Management System (SMS) designed to streamline academic and administrative operations. This system provides a robust platform for managing students, teachers, parents, academic sessions, attendance, fees, exams, and more.

🚀 Features

  • User Management: Custom user roles for Admin, Teachers, Students, and Parents.
  • Academic Management:
    • Manage Academic Sessions, Divisions, Classes, and Sections.
    • Subject assignments and Class Routines (Schedules).
    • Syllabus management and distribution.
  • Attendance System: Track daily student attendance by subject and class.
  • Fee Management:
    • Define fee categories and structures.
    • Record and track student fee payments.
  • Academic Tools:
    • Assignments and Submissions (with grading).
    • School Notices and Announcements with role-based targeting.
    • Question bank and Exam management (in progress/integrated).
  • Dashboard: Role-specific dashboards for at-a-glance information.

🛠️ Tech Stack

  • Backend: Django 5.2+
  • Database: SQLite (Development) / PostgreSQL (Recommended for Production)
  • Frontend: Django Templates, Vanilla CSS, JavaScript
  • Dependencies: django-widget-tweaks, pillow, pandas, openpyxl, reportlab

📋 Prerequisites

  • Python 3.10+
  • pip (Python package manager)

⚙️ Installation & Setup

  1. Clone the repository:

    git clone https://github.com/yourusername/SchoolManagementSystem.git
    cd SchoolManagementSystem
  2. Create a virtual environment:

    python -m venv venv
    # On Windows:
    venv\Scripts\activate
    # On macOS/Linux:
    source venv/bin/activate
  3. Install dependencies:

    pip install -r requirements.txt
  4. Environment Variables: Copy the template file and update your secrets:

    cp .env.example .env

    Edit .env and set your SECRET_KEY and DEBUG status.

  5. Run Migrations:

    python manage.py migrate
  6. Create a Superuser:

    python manage.py createsuperuser
  7. Run the development server:

    python manage.py run server

🔒 Security Note

  • SECRET_KEY: Never share your .env file or commit it to version control.
  • DEBUG: Ensure DEBUG=False in production environments.
  • Database: For production, transition from SQLite to a robust database like PostgreSQL.

📄 License

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


Built with ❤️ for better school management.

About

A portfolio showcase of Vibe Coding. This entire project was created using AI within the Antigravity IDE. Developed by Mustadafin Shimanto.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages