Skip to content

nhatntv-coder/Student-Management-System

 
 

Repository files navigation

Student_Management_System

Testing report

Pytest report

Installation Guide

Prerequisites

  • Python 3.9 or higher (3.12 recommended)
  • Git installed

Step 1: Create Virtual Environment

python -m venv .venv

Activate the virtual environment:

  • On Windows (PowerShell):
  .venv\Scripts\Activate.ps1
  • On macOS/Linux:
  source .venv/bin/activate

Step 2: Install the Project

Development mode (recommended):

pip install -e .[dev]

Runtime only (minimal install):

pip install -e .

Step 3: Run the Application

  • Run the shim launcher at project root:
  python main.py

Contributing

We use pre-commit hooks to enforce style and quality checks (black, flake8, etc.).

Setup pre-commit

pip install pre-commit
pre-commit install

Now, checks will run automatically before each commit. To run them manually on all files:

pre-commit run --all-files

Our configuration lints all .py files in src/, tests/, and the project root (e.g. main.py).


Development Notes

-Use pip==25.2.3 to ensure compatibility with pip-tools 7.5.1

Project structure

Example:

src/ │ ├── main.py # Entry point │ ├── controllers/ │ ├── init.py │ ├── auth_controller.py # Login, logout, password recovery │ ├── notification_controller.py # Notification CRUD operations │ └── navigation_controller.py # Screen navigation │ ├── models/ │ ├── init.py │ ├── database.py # Database connection & setup │ ├── student.py # Student model │ ├── admin.py # Administrator model │ └── notification.py # Notification model │ ├── views/ │ ├── init.py │ ├── login.py # Login UI │ ├── forgot_password.py # Password recovery UI │ └── notification_detail.py # Detail page UI │ └── utils/ ├── init.py └── config.py # Configuration settings

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%