WIN Student Goal Tracker
The WIN Student Goal Tracker is a web-based platform that helps teachers and program staff manage students, track goals, define benchmarks, and record progress events.
This project was developed as part of the Computing for Good (C4G) initiative.
Peer Reviewers
Check out the instructions and survey here
Thanks for reviewing our project. To reserve a login email address, go to the reservation page and following the instructions there to reserve a login credential. Our site is located at https://win.opelly.me, and the password for all reviewer logins is 1234
Live Prototype
Access the deployed prototype:
Demo credentials:
Email: opelly@gmail.com
Password: 1234
Key Features
User Authentication
- Secure login system
- JWT authentication with refresh tokens
- Program-scoped authorization
Student Management
- View assigned students
- Add new students
- Track graduation dates
Goal Management
- Create and manage goals
- Associate goals with individual students
Benchmarks
- Define milestones within a goal
- Break goals into measurable steps
Progress Events
- Record achievements and activities
- Maintain historical progress logs
System Architecture
User Browser
↓
Angular Frontend (Web Client)
↓
Reverse Proxy (SSL + Routing)
↓
.NET Core API (Business Logic)
↓
MySQL Database
Technology Stack
Frontend
Angular 20
Responsibilities: - UI rendering - API communication - Form validation - Responsive design
Backend
.NET Core 9.0 (C#) with Dapper ORM
Responsibilities: - Business logic - Goal and benchmark management - Student progress tracking - REST API endpoints
Authentication
JWT Authentication with Refresh Tokens
Features: - Token-based authentication - Refresh token lifecycle - Program-scoped authorization
Database
MySQL relational database storing:
- Users
- Programs
- Students
- Goals
- Benchmarks
- Progress Events
Infrastructure
The system runs in four Docker containers on a VPS.
Container Purpose
Angular Web frontend .NET Core API Business logic MySQL Database Traefik Reverse proxy + SSL
User Guide
Login
Navigate to:
Enter email and password and click Sign in.
Select Program
Choose:
WIN Program -- Teacher (Primary)
Student Dashboard
The dashboard displays all assigned students with:
- Student identifier
- Graduation date
- Number of goals
- Number of progress events
- Last activity date
Add Student
- Click + Add a Student
- Enter identifier
- Enter expected graduation date
- Click Add Student
Goals
Each student can have multiple goals that track academic or program milestones.
Benchmarks
Benchmarks break goals into measurable steps.
Example:
Complete Computing for Good
Progress Events
Events document activities related to a goal.
Example:
Took C4G -- loved it!
Project Structure
WinStudentGoalTracker ├── frontend ├── backend ├── database ├── docker └── README.md
Contributors
| Name | Role |
|---|---|
| Raul Rosado | Infrastructure & Governance |
| Armin Abaye | UX/UI & Product Strategy |
| Ivan Pelly | Full Stack Development |
| Oliver Pelly | Backend & Security |
| Vraj Patel | Front-End, Integration & AI |
Partner Organization
WIN Program
The WIN Student Goal Tracker supports teachers in tracking student goals, benchmarks, and progress events.
License
Educational and research use.