Projekt · 05
Status: W trakcieStudent Progress Analyzer
Aplikacja desktopowa (Electron, React, Node.js), która zdejmuje z prowadzącego zajęcia z programowania całą papierologię: grupy, studentów, zadania i obecność, oceny w skali 2,0–5,0 oraz przegląd kodu z repozytoriów studentów przez model uruchomiony lokalnie.
Przegląd kodu · schemat działania
- Repozytoria studenta z GitHub API
- Pobranie kodu źródłowego
- Analiza lokalnym modelem Ollama
- Odczyt uwag z odpowiedzi JSON
- Zapis w historii studenta
01 · Problem
Co trzeba było rozwiązać
Prowadzenie zajęć z programowania to śledzenie obecności i punktów w arkuszach i czytanie mnóstwa kodu studentów, bez szybkiego podglądu, kto zostaje w tyle.
02 · Rozwiązanie
Jak to działa
REST API na Express i MongoDB z uwierzytelnianiem JWT, klient w React i Tailwind z wykresami w Recharts i Electron, który zamyka to w przenośną aplikację na Windowsa. API GitHuba pobiera repozytoria i kod studenta, a przegląd robi Ollama na komputerze prowadzącego, więc kod studentów nie trafia do chmury.
03 · Funkcje
Co potrafi
- Grupy, studenci, zadania i obecność ze statystykami aktualizowanymi na bieżąco
- Punkty przeliczane na polską skalę ocen (2,0–5,0) dla studenta i całej grupy
- Import studentów z CSV, eksport do CSV i Excela na koniec semestru
- Przegląd kodu z repozytorium studenta przez AI, zapisywany w jego historii
- Pulpit z rozkładem ocen, wykresem obecności i interfejsem po polsku i angielsku
04 · Technologie
Zbudowane z
- TypeScript
- Node.js
- Express
- MongoDB
- React
- Electron
- Ollama
- Status
- W trakcie
- Kod
- Kod niedostępny publicznie
- Demo
- Brak publicznego demo
05 · Wyzwania
Co było trudne
Odpowiedź modelu jako JSON
Lokalne modele często owijają JSON w markdown albo dopisują tekst na końcu. Przed parsowaniem odpowiedź jest czyszczona: wszystko przed pierwszym nawiasem i po ostatnim jest ucinane, a znaczniki kodu usuwane.
Bez zainstalowanego MongoDB
Jeśli MongoDB nie odpowiada, backend przełącza się na instancję MongoDB w pamięci, więc aplikacja uruchamia się też na świeżym komputerze.
Kod studentów zostaje lokalnie
Przegląd robi Ollama na komputerze prowadzącego zamiast chmurowego API, więc kod studentów nie trafia do nikogo z zewnątrz.