Tiago Antunes — Portfolio

SkillPro for Universities

--role="Co-founder & Engineer"

Rails 8 Hotwire Turbo Streams PostgreSQL OpenAI Structured Outputs Solid Queue Active Storage Kamal
SkillPro for Universities — skill analytics subskills

cat README.md

White-labelled, multi-tenant platform where universities run AI skill assessments across their courses. An AI examiner holds a real conversation with each student, grades them against a taxonomy built from the professor's own course materials, and hands the instructor per-subskill analytics and CSV exports.

cat features.txt

AI examiner that holds a real back-and-forth with the student, carrying the whole conversation forward each turn and streaming its replies live
The examiner is forced to answer in a fixed shape with a closed set of verdicts, so its decisions stay consistent and can be graded automatically
Professors upload their own course materials (PDF, PPTX, DOCX); the text is extracted, summarised and fed into the examiner's prompt so students are assessed on what was actually taught
From those materials the system derives a sub-skill taxonomy, then grades every finished assessment against it
Proficiency scored 0-500 and broken down per sub-skill, alongside progress and six signals on how the student engaged
A private write-up for the instructor the student never sees, plus per-class analytics — score spread, completion, retake improvement — each written as a single query to avoid N+1s
Each university gets its own subdomain, students on one and instructors on another, with membership checked on every request, unknown subdomains sent back to the main site, and staff redirected to the right one automatically
Per-tenant feature switches and white-labelling held in a settings column, down to whether a group is called a "Class" or a "Module"
Passwordless email-code login with cooldowns and lockout, and invites that fail closed when an email isn't on the allowlist
Instructor CSV exports at two levels: results per student, and every individual attempt including the ones never started

cat outcomes.log

A B2B product built inside an existing Rails codebase without forking it — subdomain tenancy and per-tenant branding let one deployment serve both. Live for a university pilot tenant.

ls screenshots/

6 files · click to enlarge

student review professor report
class analytics
ai examiner conversation
examiner config materials
students invites csv
tenant whitelabel settings