P-02Product · Education

UNITRU Academic

University portal data, made clear.

Academic dashboard for UNT students that automates the university portal, predicts grades and optimizes schedules.

Year
2026
Type
Personal project
Languages
Python, TypeScript
Demo
Public

The problem

UNT’s virtual university system (SUV) spreads academic data across many screens, which makes it hard to plan around grades, attendance and schedules.

The approach

  • FastAPI backend that uses Playwright (headless Chromium) to collect all academic data in one session, solving the captcha with local OCR (Tesseract).
  • Next.js frontend with grades per unit, attendance, academic record and per-term analytics.
  • Grade-combination predictor for passing courses and a conflict-free schedule optimizer.
  • Credentials are never stored: they only exist during the active WebSocket session.

What it looks like

UNITRU Academic start screen: yellow logo, title and a “Sign in” button to check grades, schedules and attendance from the UNT portal.
Screenshot of the demo’s public screen.

System flow

Drawn with the process flow diagram notation used in chemical engineering.

Flow diagram: SUV UNT → Playwright → FastAPI → WebSocket → Dashboard1234SUV UNTPlaywrightFastAPIWebSocketDashboard
  • Input
  • Process
  • Storage
  • Output

More projects