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.

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:
- Input, an attempt record: answers, time-per-question, topic tags per question, and the max score.
- 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
- accuracy per topic (
- 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 behindprefers-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.