Inspiration
Many learners cannot afford private tutoring that costs a hundred dollars or more each month. They can spend many hours practising alone while repeating the same mistakes. The missing layer is often not more content. It is memory: what went wrong, which weakness matters most, what to try next, and whether the repair actually worked.
IELTS Focus began from my own IELTS preparation. I wanted to test whether a meaningful idea, domain knowledge, disciplined product decisions, and AI could make serious educational guidance more achievable and affordable. I used the application during my preparation, achieved IELTS 7.5, and now hold four unconditional UK university offers. This personal experience is not a promised outcome; it is why the mission matters to me.
What It Does
IELTS Focus follows a simple learning loop:
study -> capture evidence -> diagnose weakness -> prescribe repair -> verify progress -> repeat
The deterministic teacher layer owns diagnosis, priority, repair sequencing, progression, and gates. AI explains evidence, compares learner-created attempts, supports scoring and generation workflows, and helps the learner act. This separation prevents a general chat model from silently becoming the curriculum.
The product includes timed practice, Coach Brief, Review, adaptive planning, Writing, Reading, Listening, and Speaking workspaces, Vocabulary, Weekly Review, and an Archive that acts as study memory.
Judges can use the anonymous demo with isolated synthetic data and no paid account. It includes clearly labelled, context-aware AI interaction previews so the planning and Coach Chat experience can be tested without exposing an API key; the previews are deterministic and are not presented as live model output.
What Was Built During Build Week
IELTS Focus existed before the challenge. Only this post-start extension is submitted as new work:
- Supabase authentication, profiles, entitlements, five-version backups, and account deletion;
- one hosted trial AI debrief with an atomic one-per-learner claim;
- recurring Stripe checkout, idempotent webhook handling for subscription, invoice, refund, and dispute events, and a self-service billing portal;
- signed 30-day offline access for the paid desktop product;
- optional, revocable marketing consent and privacy-limited product events;
- public privacy, terms, non-affiliation, and no-score-guarantee language;
- an original free 7-Day Reading Challenge that queues real practice sessions;
- a free-first landing experience, guided onboarding, a public support center, and responsive, accessibility, and commercial-flow tests;
- an opt-in, privacy-safe ML research foundation with text-free aggregate features, owner-scoped records, local model scoring, shadow-only integration, and public model cards.
The custom ML layer is intentionally not presented as trained or production-authoritative. It cannot change learner-visible guidance until enough consented outcomes exist and the published performance, calibration, fairness, privacy, and regression gates are passed.
Dated challenge-period commits document this extension. The complete existing-versus-new boundary is in BUILD_WEEK_SUBMISSION.md.
How Codex And GPT-5.6 Were Used
Earlier OpenAI models helped explore the product concept, organize learning logic, and refine features in the pre-existing application. The qualifying Build Week thread ran in Codex with GPT-5.6. Codex helped audit the earlier product, design the public-release architecture, implement React and Electron changes, write Supabase migrations and Edge Functions, add tests, challenge privacy assumptions, and prepare release evidence.
Codex was especially useful across boundaries that normally require repeated context switching: learning experience, UI states, Row Level Security, reliable entitlements, demo isolation, accessibility, and release documentation. I defined the learner problem, mission, product logic, and consequential decisions; AI made implementing, testing, and improving those decisions substantially faster.
The founder retained the consequential decisions:
- learner history remains local by default;
- teacher rules, not freeform AI, choose learning priorities;
- detailed learner answers and AI content stay out of product analytics;
- the public funnel gives useful free practice before payment;
- the product does not claim official affiliation or guaranteed scores;
- unverified users, revenue, retention, accuracy, and outcomes are not presented as facts.
Technical Challenges
The hardest problem was adding a hosted commercial layer without undoing the local-first privacy model. The resulting boundary keeps detailed learner history and provider keys on the device while the hosted layer stores only identity, access, limited backups, consent, usage, and carefully scoped events.
The second challenge was maintaining one entitlement lifecycle across a web account, Stripe events, and a desktop app that must continue safely offline. The implementation uses idempotent server records and a signed, expiring desktop entitlement rather than trusting editable local flags.
The third challenge was creating an honest judge experience for an existing project. The submission separates pre-challenge functionality from the qualifying extension, provides dated commits, and offers an anonymous synthetic-data route.
Accomplishments
- A working public site, Reading Challenge, and anonymous demo are live.
- The founder used IELTS Focus during personal preparation, achieved IELTS 7.5, and now holds four unconditional UK university offers; no causal or guaranteed-outcome claim is made.
- The qualifying extension is covered by unit and browser tests.
- The repository passes 302 unit tests, 4 ML-pipeline tests, and 96 browser tests across three viewport profiles, plus TypeScript checking, UI policy checks, and a production web build.
- Commercial database tables use owner-scoped Row Level Security.
- Trial AI and Stripe webhook paths include atomicity or idempotency controls.
- Marketing consent is optional and revocable.
- Product analytics exclude learner answers, AI content, API keys, and consent history.
- A final live audit scanned 47 deployed text assets with no private personal or secret-key findings and confirmed that anonymous database access exposes zero rows.
What I Learned
AI changes who can turn a serious idea into working software, but it does not replace domain knowledge, product judgment, evidence, or responsibility. Clear human decisions made Codex useful; iteration, tests, and honest boundaries made the output trustworthy.
I also learned that an AI education product becomes clearer when AI has a defined job. In IELTS Focus, the transparent teacher system decides what should be learned next, while AI helps explain, personalize, and execute that decision. Public readiness is likewise more than a payment button: it requires identity, privacy, deletion, testability, and honest claims.
What Is Next
- complete teacher-quality review with Aaron;
- run a controlled pilot with five to ten representative learners;
- extend deeper AI-guided teaching from Writing and Speaking into Reading and Listening;
- evolve the current tracking and adaptive guidance into a complete IELTS study platform;
- collect explicitly consented, aggregate research evidence and evaluate future machine-learning models against the transparent rule-based baseline;
- pursue authorized content licensing or collaboration with IELTS organizations such as Cambridge and the British Council;
- reinvest any competition prize in this education-access roadmap;
- validate the complete payment-to-entitlement and refund lifecycle in production;
- measure activation, completed repair loops, return, teacher agreement, reliability, and support load;
- sign and notarize desktop builds before broad distribution;
- make product and pricing decisions from learner evidence rather than interest alone.
Built With
- codex
- css
- electron
- gpt-5.6
- openai
- playwright
- postgresql
- pwa
- react
- stripe
- supabase
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.