Skip to content
Back to blog
Freelance
2026-09-05 7 min read

Case Study: Institute Site with Mock-Test Performance Analytics

The Infinity Classes build, a static multi-page institute site where a mock-test flow turns attempt data into topic-level weak-area diagnostics, served from the Vercel edge.

Vercel
Static Site
Data Analytics
Accessibility
Case Study: Institute Site with Mock-Test Performance Analytics

The Infinity Classes site is a static, multi-page institute web app whose headline feature is mock-test performance analytics: sit a test, get topic-level diagnostics. Here is how that data flows, and why the whole thing stays on the Vercel edge.

Page Architecture

A handful of real routes: the catalog, course detail pages, /study-material, /results, and /blog. Static multi-page for the same TTFB/hydration reasons as any SSG: the content changes slowly, so pre-render it and edge-cache it.

The Mock-Test Analytics Flow

The interesting part is the diagnostic pipeline:

  1. Input, an attempt record: answers, time-per-question, topic tags per question, and the max score.
  2. Client-side computation, there is no backend analytics service. The browser does the math on the attempt JSON:
    • accuracy per topic (correct / attempted)
    • time-per-question against a par time
    • weak-area detection, topics below a pass-accuracy threshold, ranked by their weight in the exam
  3. Output, per-topic performance, a prioritized weak-area list, and a suggested study order.

Because the computation is local, the feature works offline once the page is cached, and attempt data never leaves the student's device, a privacy property that came for free. The institute markets this as AI-powered performance analysis; what ships is the deterministic analytics above, which does the diagnostic job without a model call.

Study-Material Distribution

Notes and past papers are static files served from the edge: byte-stable, cache-immutable, zero origin load. The page that lists them is just an index.

Performance and Accessibility Budget

  • CWV, WebP hero, fixed aspect-ratio boxes (CLS near zero), minimal inline JS (TBT near zero), LCP under 2.5 s on a throttled mid-range phone.
  • A11y, results rendered as semantic tables with proper scope, focus managed in the diagnostic panel, and all motion gated behind prefers-reduced-motion.

What I Learned

Static architecture forces the data-modeling decisions, attempt schemas, topic tags, to the front, and pays back in the simplest runtime possible. And a small local computation beats a remote model call on both latency and privacy.