Skip to content

kspeiris/gradify-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

55 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Student Success Platform

A cloud-native SaaS platform designed to help university students manage, monitor, and improve their academic performance throughout their degree program.


πŸ“– Overview

Student Success Platform provides a centralized academic management system where students can:

  • Manage semesters and subjects
  • Track assignments and exams
  • Calculate GPA automatically
  • Monitor academic progress
  • Set academic goals
  • Receive important reminders
  • Visualize academic performance through analytics

Instead of relying on spreadsheets, notes, and manual GPA calculations, students can access all academic information through a modern web-based dashboard.


🎯 Project Goals

The primary objective of this project is to build a realistic SaaS application that demonstrates:

  • Microservices Architecture
  • Full-Stack Development
  • REST API Development
  • Database Design
  • JWT Authentication
  • Cloud-Native Application Design

πŸš€ Features

πŸ” Authentication & Profile Management

  • User Registration
  • Secure Login
  • JWT Authentication
  • Profile Management
  • Password Management

πŸ“š Semester Management

Students can:

  • Create Semesters
  • Update Semester Information
  • View Semester History
  • Track Academic Progress

πŸ“– Subject Management

Students can:

  • Add Subjects
  • Define Credit Values
  • Manage Subject Information
  • Track Grades

πŸ“ Assignment Tracking

Students can:

  • Create Assignments
  • Set Deadlines
  • Track Progress
  • Store Marks

Assignment Status:

  • Pending
  • In Progress
  • Completed
  • Overdue

πŸ§ͺ Exam Management

Students can:

  • Schedule Exams
  • Record Marks
  • Track Performance
  • Manage Exam Information

πŸ“Š GPA Management

Students can:

  • Calculate Semester GPA (SGPA)
  • Calculate Cumulative GPA (CGPA)
  • View GPA History
  • Predict Future GPA

🎯 Academic Goals

Students can:

  • Set Target GPA
  • Track Goal Progress
  • Monitor Academic Objectives

Examples:

  • Achieve GPA 3.80+
  • Maintain Dean’s List
  • Improve Subject Performance

πŸ“ˆ Analytics Dashboard

The dashboard provides:

  • GPA Trends
  • Assignment Completion Rate
  • Subject Performance Analysis
  • Academic Progress Tracking
  • Goal Achievement Progress

πŸ”” Notification Center

Students receive:

  • Assignment Reminders
  • Exam Reminders
  • GPA Updates
  • Goal Progress Notifications

πŸ—οΈ System Architecture

Client Browser
       β”‚
       β–Ό

React Frontend
       β”‚
       β–Ό

Nginx Reverse Proxy
       β”‚
 β”Œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚     β”‚          β”‚          β”‚
 β–Ό     β–Ό          β–Ό          β–Ό

Auth Academic   GPA   Notification
Service Service Service Service

       β”‚
       β–Ό

PostgreSQL Database

🧩 Microservices

Auth Service

Responsibilities:

  • User Registration
  • User Login
  • JWT Authentication
  • Profile Management

Base Route:

/api/auth

Academic Service

Responsibilities:

  • Semester Management
  • Subject Management
  • Assignment Management
  • Exam Management

Base Route:

/api/academic

GPA Service

Responsibilities:

  • SGPA Calculation
  • CGPA Calculation
  • GPA History
  • GPA Prediction

Base Route:

/api/gpa

Notification Service

Responsibilities:

  • Assignment Notifications
  • Exam Notifications
  • Goal Reminders
  • GPA Updates

Base Route:

/api/notifications

βš™οΈ Technology Stack

Frontend

  • React
  • TypeScript
  • Tailwind CSS
  • React Router
  • Axios
  • Recharts

Backend

  • Node.js
  • Express.js
  • Prisma ORM

Database

  • PostgreSQL

Authentication

  • JWT
  • bcrypt

Reverse Proxy

  • Nginx

Documentation

  • Swagger / OpenAPI

πŸ—„οΈ Database Design

Core Tables

users

semesters

subjects

assignments

exams

grades

gpa_records

notifications

Relationship Flow

User
 β”‚
 └── Semester
        β”‚
        └── Subject
               β”‚
               β”œβ”€β”€ Assignment
               β”œβ”€β”€ Exam
               └── Grade
                       β”‚
                       └── GPA Record

πŸ“ Project Structure

student-success-platform/

β”œβ”€β”€ frontend/

β”œβ”€β”€ services/
β”‚   β”œβ”€β”€ auth-service/
β”‚   β”œβ”€β”€ academic-service/
β”‚   β”œβ”€β”€ gpa-service/
β”‚   └── notification-service/

β”œβ”€β”€ nginx/
β”‚   └── nginx.conf

β”œβ”€β”€ database/
β”‚   β”œβ”€β”€ schema.sql
β”‚   β”œβ”€β”€ seed.sql
β”‚   └── ER-Diagram

β”œβ”€β”€ docs/
β”‚   β”œβ”€β”€ Architecture-Diagram
β”‚   β”œβ”€β”€ API-Documentation
β”‚   └── Technical-Report

β”œβ”€β”€ docker-compose.yml

β”œβ”€β”€ README.md

└── .gitignore

πŸ“‘ API Endpoints

Authentication

POST /api/auth/register
POST /api/auth/login
GET  /api/auth/profile
PUT  /api/auth/profile

Academic

GET    /api/academic/semesters
POST   /api/academic/semesters

GET    /api/academic/subjects
POST   /api/academic/subjects

GET    /api/academic/assignments
POST   /api/academic/assignments

GET    /api/academic/exams
POST   /api/academic/exams

GPA

POST /api/gpa/calculate
GET  /api/gpa/history
POST /api/gpa/predict

Notifications

GET  /api/notifications
POST /api/notifications
PUT  /api/notifications/read

πŸ”’ Security Features

  • JWT Authentication
  • Password Hashing using bcrypt
  • Protected API Routes
  • Input Validation
  • Environment Variable Configuration
  • Secure Authentication Flow

πŸ“Š Frontend Modules

  • Login
  • Dashboard
  • Semester Management
  • Subject Management
  • Assignment Tracking
  • Exam Management
  • GPA Analytics
  • Notification Center
  • Profile
  • Settings

πŸ“ˆ Development Progress

Completed

  • Requirements Analysis
  • System Architecture Design
  • Database Design
  • ER Diagram
  • PostgreSQL Setup
  • Frontend UI Development
  • Page Design Implementation
  • Nginx Architecture Planning

Current Phase

  • Backend Foundation
  • Microservice Setup

Upcoming

  • Auth Service Development
  • JWT Authentication
  • Frontend Integration
  • Academic Service Development
  • GPA Service Development
  • Notification Service Development

🎯 Expected Outcomes

The completed system will allow students to:

  • Organize academic records
  • Track assignments and exams
  • Calculate GPA automatically
  • Analyze academic performance
  • Improve academic planning
  • Monitor progress toward goals

This project demonstrates practical implementation of:

  • SaaS Architecture
  • Microservices
  • Full-Stack Development
  • REST APIs
  • PostgreSQL Database Design
  • Secure Authentication
  • Cloud-Native Software Design

πŸ‘¨β€πŸ’» Project Status

🚧 Currently Under Development

Frontend: Completed

Database Design: Completed

Backend Services: In Progress

Deployment & DevOps: Planned

Finished.....

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors