Skip to content

School Management System is a comprehensive web application designed to streamline school operations. It helps administrators, teachers, students, and parents manage attendance, grades, timetables, and communication—all in one easy-to-use platform.

Notifications You must be signed in to change notification settings

IlhomBek-F/school-management-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

114 Commits
 
 
 
 
 
 

Repository files navigation

School Management System

A comprehensive fullstack school management system built with Angular and Go (Gin framework) for managing students, teachers, classes, and academic operations.

🚀 Features

  • Student Management: Register, update, and track student information
  • Teacher Management: Manage teacher profiles and assignments
  • Class Management: Create and organize classes and schedules
  • Attendance Tracking: Record and monitor student attendance
  • Grade Management: Input and manage student grades and assessments
  • User Authentication: Secure login system with role-based access control
  • Dashboard: Interactive dashboard with analytics and insights
  • Reports: Generate academic and administrative reports

🛠️ Tech Stack

Frontend

  • Framework: Angular 17+
  • UI Components: PrimeNg / TailwindCss
  • State Management: RxJS
  • HTTP Client: Angular HttpClient
  • Routing: Angular Router

Backend

  • Language: Go 1.21+
  • Framework: Gin
  • Database: PostgreSQL
  • ORM: GORM
  • Authentication: JWT
  • API Documentation: Swagger

📋 Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js (v18+ recommended)
  • npm or yarn
  • Go (v1.21 or higher)
  • PostgreSQL
  • Git

🔧 Installation

Clone the Repository

git clone https://github.com/yourusername/school-management-system.git
cd school-management-system

Backend Setup

  1. Navigate to the server directory:
cd server
  1. Install Go dependencies:
go mod download
  1. Create a .env file in the server directory:
DB_HOST=localhost
DB_PORT=5432
DB_USER=your_db_user
DB_PASSWORD=your_db_password
DB_NAME=school_db
JWT_SECRET=your_secret_key
PORT=8080
  1. Run database migrations:
go run main.go migrate
  1. Start the server:
go run main.go

The server will start at http://localhost:8080

Frontend Setup

  1. Navigate to the client directory:
cd client
  1. Install dependencies:
npm install
  1. Create environment.ts file in src/environments/:
export const environment = {
  production: false,
  apiUrl: 'http://localhost:8080/api'
};
  1. Start the development server:
ng serve

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

About

School Management System is a comprehensive web application designed to streamline school operations. It helps administrators, teachers, students, and parents manage attendance, grades, timetables, and communication—all in one easy-to-use platform.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published