Syllabus-Sync
Syllabus Sync is an AI-native Campus OS that transforms static university PDF syllabi into structured, agent-readable data and wraps them in a full student operations suite: calendar, map, notifications, and multi-profile management. It has been accepted into the Macquarie University Incubator as a formal startup and runs in production at syllabus-sync.app.
01 / Overview
- 01Next.js 16
- 02TypeScript 5
- 03Supabase PostgreSQL
- 04TanStack Query
- 05Leaflet + Google Maps
- 06Framer Motion
- 07Radix UI
- 08Sentry
Problem
Australian universities publish syllabi as unstructured PDFs. Students manually copy assessment dates into calendars, and AI assistants hallucinate deadlines because no machine-readable source of truth exists.
Solution Overview
- Built an LLM OCR pipeline that extracts structured JSON from PDF syllabi with Zod schema validation
- Implemented Syllabus-as-Code where assessments and deadlines are version-controlled, diff-able artefacts
- Created a full student OS with calendar, campus navigation (Leaflet + Google Maps), and push notifications
- Designed for other Australian universities to adopt by replacing data/ and setting environment variables
02 / Evidence
Proof & Verification
- Accepted into the Macquarie University Incubator as a formal startup (2026)
- Live in production at syllabus-sync.app
- All 503 tests across 92 files passed in CI
- Zero-Trust proxy catches misconfiguration by default (validated in production)
- Designed to serve ~47,000 MQ students; architected to fork for other Australian universities
- WebAuthn passkey authentication keeps shared secrets on the device
03 / Methods
Build
Tech Stack
- Next.js 16
- TypeScript 5
- Supabase PostgreSQL
- TanStack Query
- Leaflet + Google Maps
- Framer Motion
- Radix UI
- Sentry
- LLM OCR pipeline extracting structured JSON from PDF syllabi
- Syllabus-as-Code: assessments and deadlines are version-controlled artefacts
- Full student OS: calendar, reminders, campus map, notifications
- 503 tests across 92 files with CI/CD quality gates
Secure
- Zero-Trust proxy middleware authenticates every route by default
- Supabase Row-Level Security enforced at database layer
- WebAuthn/FIDO2 passkey authentication (no passwords stored)
- LLM prompt injection mitigation with schema-constrained output and input sanitisation
- Secrets scanner in CI blocks credential patterns from commits