Ingenious IELTS & PTE
A coaching institute whose organic reach lives or dies on its model answers being findable. We built a platform where teachers publish exam content themselves — and where every answer is scannable to a student and readable by a crawler at the same time.
- Next.js
- Sanity CMS
- Portable Text
- Vercel
- Pre-rendered
- Accessible accordions
01 — The Problem
The teaching material and the top of the funnel are the same thing
Ingenious coaches students through IELTS and PTE. Students do not go looking for a coaching institute — they go looking for the thing they are stuck on: a writing task type, a speaking cue card, a PTE template.
So the institute’s model answers are simultaneously its teaching material and its entire top of funnel. The site earns its traffic by being the page that answers the question a student typed.
Two requirements pull in opposite directions. A student wants to scan — to find their topic, not scroll past four essays to reach the fifth. A search engine wants the text, in the document, where it can read it.
And a third constraint sits underneath both: the people writing this content are teachers, not developers. If publishing a cue card needs an engineer, it stops happening weekly — and a site like this only compounds if the content keeps arriving.
02 — The Approach
Give the content to the teachers, and keep the design out of their hands
Three decisions, and the tension between the second and third is the whole design of this build.
Put the content in a CMS the institute owns
Exam topics, model answers and student success stories live in Sanity. Staff publish directly — no deployment, no developer, no ticket.
WhyThis site’s value compounds only while new content keeps arriving. Anything that puts an engineer between a teacher and a published cue card sets a ceiling on how fast the institute can grow its own reach, and that ceiling is far lower than the teachers’ appetite for writing.
Render structured content through our own components — never raw markup
Content is authored as Portable Text: a structured tree of blocks, spans and marks rather than a blob of HTML. Rendering it means mapping those nodes onto components we control.
WhyAn author says what a thing is — a heading, an emphasis, a quote. The design decides how it looks. That separation is the only reason a minimal theme survives contact with a hundred contributors who are, correctly, thinking about IELTS rather than typography.
Pre-render everything and cache it at the edge
Pages are pre-rendered and served from cache — content changes only when a teacher publishes, which is often on a human timescale and never on a per-request one.
WhyStudents arrive on phones, on Indian mobile data, usually mid-revision. There is no reason for any of them to wait on a server rendering an essay that has not changed since last week.
03 — Key Technical Challenges
Two problems worth solving properly
Answers that must be scannable to a student and legible to a crawler
Both requirements are legitimate, and they point opposite ways. Lay twenty model essays out in full and the page becomes unusable — a student scrolls past four answers to reach the one they wanted. Fix that the obvious way, by fetching each answer when it is clicked, and the answers are no longer in the document.
That second failure is the expensive one. A page whose entire organic value is its model answers, that does not contain its model answers, ranks for nothing that matters.
Collapse it visually; keep it in the document. Every topic is an accordion, closed by default, so a student sees a clean list of topics and opens the one they came for. But the answer is rendered into the page, not fetched on demand — it is hidden from the eye, never from a crawler.
The trade is real and we took it on purpose. The speaking cue-cards page ships around 420 KB of HTML, because every answer travels with it. In exchange, every one of those answers is indexable, and a student who opens a card gets it instantly with no round trip.
On a page whose job is first to be found and then to be read, that is the right side of the trade — and it is a trade, not a free win.
A minimal design that has to survive its own contributors
The theme is deliberately austere: black, white, a great deal of space, no ornament. That kind of design is easy to draw once and hard to keep, because it has no decoration to hide behind — every inconsistency shows.
And it has to be publishable into by people who are not designers, or the content stops growing. A rich-text box that accepts pasted formatting would look fine on day one and like three different websites by the end of term.
Authors never produce markup. Because content arrives as Portable Text, a teacher can mark a phrase as emphasis or a line as a heading — but cannot choose a font, a colour, a size or a margin, because none of those are theirs to choose.
Supporting a new kind of content means writing a component, not patching a stylesheet to undo what someone pasted.
The hundredth cue card looks like the first, without anyone having to police it.
04 — What We Built
A publishing platform that happens to look like a website
Exam content
- IELTS Writing — Task 1 Academic, Task 1 GT, Task 2
- IELTS Speaking — introduction, cue cards
- PTE templates
- Model answers on every topic
Publishing
- Sanity CMS owned by the institute
- Topics and answers published without a deploy
- Student success stories
Presentation
- Accordion per topic, closed by default
- Minimal black-and-white theme
- Portable Text rendered by our components
Platform
- Next.js, pre-rendered
- Deployed on Vercel, edge-cached
- Enquiry capture and WhatsApp contact
05 — The Result
A site the institute can grow without us
Ingenious publishes its own exam content. A teacher writes a cue card and a model answer, presses publish, and the page exists — correctly styled, fully in the document, and available to anyone searching for that topic. No deploy, no developer, no drift in the design.
That was the actual deliverable. The website is the visible part; the thing we handed over was the ability to keep adding to it indefinitely without needing us.
The institute publishes its own student and score figures on the site; those are their numbers, not ours, so we have not repeated them here as results of this build. We do not hold analytics on it either. Everything above is either visible on the live site or a decision we made while building it.
Need a site your own team can keep feeding?
We build publishing platforms where the people with the knowledge can put it live — without a developer, and without the design coming apart.
Start a conversation