The problem and idea
Most language apps are not effective enough because they do not genuinely adapt to the learner. They move people through largely predetermined content, treat completion as progress, and rarely build a precise model of the weaknesses holding each learner back. They also flatten language proficiency into a course level or single score, even though knowing vocabulary, applying grammar, distinguishing sounds, forming words, and choosing language appropriately in context are different capabilities. The result is wasted practice on familiar material while important gaps remain undetected.
Liaison is a graph-grounded learning platform built around two principles: seeing something is not the same as knowing it, and different weaknesses require different forms of practice. It decomposes French into vocabulary, grammar, sounds, morphology, and pragmatics, then connects the concepts across those pillars through typed relationships. Its evidence model can identify the weak concept and the prerequisite causing difficulty, then craft the lesson or exercise most appropriate for improving that capability. A learner can see not only what to do next, but why it was selected and which past actions influenced it.
The solution and learner experience
The Today screen turns a complex adaptive system into one clear recommendation based on progress, prerequisites, pillar-specific weaknesses, and review needs. Liaison can emphasize retrieval and context for vocabulary, rules and contrasts for grammar, listening discrimination for sounds, word formation for morphology, or situational choices for pragmatics. Completing content records exposure, but confidence changes only after a targeted exercise. Feedback shows what changed, and the Graph view makes the learner's growing knowledge state visible.
The experience also includes a structured A1–B2 curriculum with 428 lessons and story checkpoints, varied practice, an auditable learning history, and a 264-rule grammar reference. Lili, the built-in AI learning buddy, can answer questions or generate a lesson or exercise from the learner's current context.
Technical implementation
At Liaison's foundation is a deterministic French knowledge graph containing 2,046 concepts and 8,042 typed relationships. It connects high-frequency vocabulary with grammar rules, phonemes and spellings, morphology, pragmatic choices, communicative situations, and reusable phrases. Content nodes carry stable identifiers, CEFR metadata, prerequisite and contrastive relationships, source provenance, and validation status.
A separate per-user layer stores exposure, graded attempts, confidence, review state, and history without mutating the canonical language graph. Each exercise declares one explicit target node so the system can assign learning evidence narrowly rather than crediting every concept shown on screen. That update feeds the next recommendation and review decision.
AI generation is constrained by the same architecture. Lili and the lesson generator receive a selected graph slice rather than the entire unbounded language domain. Generated lessons use structured output contracts, validated node IDs, explicit exercise targets, and answer checks. Provider timeouts and transient errors are classified and tested; when generation cannot be trusted, Liaison returns a quality-controlled curated lesson with a truthful explanation. The graph build, learning-state boundaries, stories, lesson completion, exercise generation, persistence, and rendered application are covered by automated tests.
How I used GPT-5.6, Codex, gstack, and app shots
Codex with GPT-5.6 was an active product and engineering collaborator, not just a code-completion tool. I used gstack to develop and pressure-test the PRD from product, design, engineering, and developer-experience perspectives. This helped turn the initial idea into explicit learning-state rules, graph contracts, adaptive behavior, and testable acceptance criteria.
During implementation, I captured app shots—screenshots from the running product that made visual and interaction problems concrete—and gave them to Codex as evidence. The working loop was: define the requirement with gstack, build with Codex, inspect the real app, show Codex the problem, implement the fix, and verify it with tests and a new app shot. Codex also helped build the deterministic graph pipeline and full-stack app, design structured AI contracts, diagnose production lesson-generation failures, and add regression coverage. I retained the core product and architecture decisions, especially the separation of exposure from mastery and the requirement for transparent curated fallbacks.
Potential impact
Liaison demonstrates a more trustworthy form of AI personalization: recommendations based on evidence that learners and educators can inspect. French is the first implementation, but Liaison's deeper contribution is a reusable framework for learning any structured body of knowledge. A new domain can be represented as concepts and prerequisite relationships, while a separate evidence layer identifies each learner's strengths, gaps, and next best challenge. Extended with goal decomposition, deliberate practice, rapid feedback, retrieval, and review planning, this framework can grow into an ultralearning app for subjects ranging from languages to mathematics, science, and professional skills.
Built With
- cloudflare-workers
- codex
- d1
- drizzle
- gpt-5.6
- python
- react
- typescript
- vinext
Log in or sign up for Devpost to join the conversation.