CompSci

Department-wide Computer Science tooling on Cloudflare

A simple wiki for the current deployed estate: the main exam app, coding playground, admin surface, supporting microsites, shared preview auth, and Neon SQL smoke path.

ExamHost deployed app after admin-login access and SQL connection
Production ExamHost Pages deployment with shared auth and SQL smoke check.

Current Direction

Platform Overview

Department Toolset

ExamHost is moving from one exam app into focused services for practice, marking, retrieval, analytics, issue tracking, games, and operations.

Cloudflare First

Web surfaces are deploying through Cloudflare Pages. Pages Functions and Workers are the preferred direction for edge/API work.

SQL Backed

Neon PostgreSQL is connected for production smoke checks. Mock SQL planning lives in data/SQL/.

Live Estate

Apps And Screenshots

ExamHost deployed screenshot

ExamHost

Main OCR J277 practice, topic drill, teacher workflow, and feedback surface.

exam-host.pages.dev

Smoke Path

User Journey

1

User opens a deployed Cloudflare Pages app.

2

The shared access gate asks for the configured admin login.

3

Cloudflare validates the ADMIN_LOGIN runtime secret and returns a persisted browser session through packages/auth.

4

The app calls /api/sql-smoke after unlock.

5

A Pages Function runs a server-side Neon PostgreSQL query without exposing secrets.

6

The app shows the connected SQL state in the banner.

Cloudflare Pages SQL smoke endpoint response
Production SQL smoke response from the Cloudflare Pages Function.

User Journeys

Auth And SQL Coverage

Microapp Admin login secret SQL secret End-to-end status
ExamHostProvisionedProvisionedVerified through /api/auth-preview and /api/sql-smoke.
Coding PlaygroundProvisionedProvisionedVerified through /api/auth-preview and /api/sql-smoke.
AdminProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.
AnalyticsProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.
Self AssessProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.
Marking InterfaceProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.
Recall FormsProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.
IssuesProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.
GamesProvisionedProvisionedEnvironment ready; shared Function gate still needs to be added to this static microsite.

Repository

Root README Snapshot

CompSci

CompSci is a department-wide Computer Science teaching, assessment, and revision platform. The repository is organised as a Turborepo monorepo so the original exam-practice app can sit alongside smaller Cloudflare apps, service workers, SQL-backed APIs, and shared packages.

apps/
  exam-host/            Main React app for OCR J277 exam practice
  coding-playground/    Browser Python and SQL practice microsite
  admin/                Admin and operational dashboard surface
  design/               Design review and visual exploration area
  api/                  Server-side API and Gemini proxy work
  workers/              Background jobs and scheduled-worker services
  exam-collation/       Exam response collation tooling

packages/
  ai/ auth/ db/ mock-data/ storage/

docs/
  cloudflare-wiki/      This static documentation site
  legal/                Draft legal and governance pack
  USER_FLOWS.md         User journeys and system flows

Deployment

Cloudflare Pages Projects

Project Domain Purpose
exam-hostexam-host.pages.devMain app
coding-playgroundcoding-playground.pages.devCoding and SQL practice
exam-host-adminexam-host-admin.pages.devAdmin dashboard
exam-host-analyticsexam-host-analytics.pages.devAnalytics microsite
exam-host-self-assessexam-host-self-assess.pages.devSelf assessment microsite
exam-host-marking-interfaceexam-host-marking-interface.pages.devMarking workspace microsite
exam-host-recall-formsexam-host-recall-forms.pages.devRecall prompts microsite
exam-host-issuesexam-host-issues.pages.devIssue operations microsite
exam-host-gamesexam-host-games.pages.devRevision games microsite