Inspiration
Students without consistent access to tutoring, modern devices, or reliable internet can lose learning momentum every time a study session ends or a connection drops.
Most practice systems remember what a student got wrong, but not what teaching strategy actually helped them recover.
That led us to a simple question:
What if an SAT tutor could verify what helped a student, remember that evidence across sessions, and reuse the successful strategy sooner when the same difficulty appeared again?
BridgeSAT was built around that idea.
It is an offline-first SAT Math learning agent designed to maintain learning continuity across sessions and unreliable networks while keeping educational decisions bounded, explainable, and verifiable.
What it does
BridgeSAT runs a closed adaptive learning loop:
diagnose
→ detect misconception evidence
→ choose a bounded teaching action
→ provide approved instructional content
→ test the strategy on a different problem
→ validate the intervention
→ store a learning record
→ recall it in a later session
→ intervene sooner
For example, when a student first demonstrates a slope-sign misconception, BridgeSAT may ask them to retry a similar problem.
If the same misconception appears again, it can escalate to a worked example.
But BridgeSAT does not immediately assume that the worked example was effective.
The student must successfully solve a different transfer problem before that intervention becomes validated learning memory.
When the same misconception appears in a later session, BridgeSAT can recall the previously validated strategy and provide it earlier instead of forcing the learner through the same sequence of failures again.
BridgeSAT can autonomously choose from a bounded set of learning actions such as:
- retry the same skill;
- provide a hint;
- show a micro-lesson;
- show a worked example;
- review a prerequisite;
- move to a new problem.
The student does not need to diagnose their own mistake or know what help to request.
BridgeSAT is also offline-first. After the learning content has been cached, a student can continue practicing, request hints, receive feedback, refresh the page, recover the active session, and queue learning events even when the network is unavailable.
When connectivity returns, pending events synchronize automatically.
Our final demo shows the complete path:
Diagnostic
→ RETRY_SAME_SKILL
→ SHOW_WORKED_EXAMPLE
→ different-item transfer validation
→ Session 2 recall
→ learning-record evidence
→ offline learning
→ refresh recovery
→ reconnect
→ pending = 0 / failed = 0
How we built it
BridgeSAT combines a mobile-first Progressive Web App with a FastAPI backend and PostgreSQL as the authoritative learning store.
The backend uses:
- Python
- FastAPI
- PostgreSQL
- versioned PostgreSQL migrations
- deterministic learning policies
- misconception evidence
- mastery tracking
- event-based synchronization
- validated cross-session learning memory
- governed content retrieval
- bounded agent actions
PostgreSQL stores authoritative learner state, learning events, episodic learning records, synchronization state, and approved content metadata.
The frontend is a browser-based PWA built with JavaScript, HTML, and CSS.
We use:
- Service Worker caching for offline availability;
- IndexedDB for active-session recovery;
- persistent pending-event queues;
- stable event IDs;
- device sequence numbers;
- reconnect synchronization;
- server-side duplicate protection.
BridgeSAT also includes a governed SAT Math content pack containing:
- 103 questions
- 24 instructional assets
- 8 math skills
Content includes structured metadata for skills, misconception targets, transfer relationships, hashes, lineage, and review state.
We deliberately separated authoritative educational decisions from optional model-assisted behavior.
Answers, mastery calculations, learning-state transitions, and the core policy remain deterministic.
Optional AI-generated explanations or summaries must pass verification, fail closed, and cannot override the authoritative learning state. For the competition build, the final configuration keeps the core learning path deterministic.
Challenges we ran into
One of the hardest problems was deciding when BridgeSAT should be allowed to remember that an intervention worked.
A student answering correctly immediately after seeing an explanation is weak evidence. They may simply remember the example.
We therefore required success on a different problem before turning an intervention into reusable learning memory.
That gave us a stronger learning-memory structure:
misconception
+ intervention
+ exact content shown
+ different-item transfer success
= validated learning record
Another major challenge was offline adaptation.
Making a page load offline is relatively easy. Making an adaptive learning system continue safely offline is much harder.
We had to preserve the active question, hints, feedback, learning state, and pending events while ensuring that reconnecting could not double-score answers or corrupt server state.
This required careful handling of event ordering, stable IDs, sequence numbers, refresh recovery, synchronization, and duplicate protection.
A third challenge was determining how much authority to give generative AI.
Allowing an unconstrained model to modify mastery, answers, or state transitions would make the learning system difficult to verify.
We instead designed BridgeSAT around a bounded deterministic policy and treated optional model output as verified assistance rather than educational authority.
Finally, we had to be careful about evaluation claims.
Adaptive-learning simulations can easily look like real educational evidence. We explicitly separate synthetic simulation, controlled internal evaluation, and real student outcomes.
BridgeSAT does not claim measured SAT-score improvement from real students.
Accomplishments that we're proud of
We are most proud that BridgeSAT connects adaptation, memory, transfer validation, and offline continuity into one end-to-end student experience.
The final competition path demonstrates that BridgeSAT can:
- detect repeated misconception evidence;
- automatically escalate the teaching strategy;
- validate that strategy on a different problem;
- create a grounded learning record;
- recall the successful strategy in a later session;
- intervene earlier because of that evidence;
- continue learning while offline;
- survive an offline page refresh;
- synchronize successfully after reconnecting.
The current competition build has also been extensively tested.
Controlled internal evidence includes:
- 850 passing Python tests
- 57 passing Web tests
- 10/10 offline and synchronization scenarios
- 1799/1799 content-governance checks
- 100% PostgreSQL similarity recall@3 in the controlled memory evaluation
- 100% next-action accuracy in the same controlled evaluation
- zero restricted-source retrieval hits
We are also proud that BridgeSAT remains explicit about its limitations.
The current content-review ledger is a controlled/simulated review artifact rather than completed educator approval, and simulated educational improvements are not presented as real student outcomes.
What we learned
The biggest lesson was that learning memory is not the same thing as chat history.
Remembering everything a student previously said is not necessarily useful.
What matters is remembering structured evidence about what helped:
what went wrong
→ what intervention was delivered
→ what exact approved content was shown
→ whether the student transferred that strategy successfully
That makes later personalization much easier to explain and audit.
We also learned that offline-first design has to be architectural rather than cosmetic.
If offline support is added at the end, the system may cache a page but still lose the actual learning state.
Designing for unreliable connectivity from the beginning changed how we handled state, events, recovery, and adaptation.
Finally, we learned that an educational agent does not need unrestricted autonomy to feel intelligent.
A bounded agent that knows when to retry, when to teach, when to validate, and when to reuse successful evidence can provide meaningful personalization while remaining much easier to test and trust.
What's next for BridgeSAT
The current version is an SAT Math competition MVP.
Our next steps are to:
- conduct structured usability testing with real students;
- complete educator review of the learning content;
- perform a full screen-reader and accessibility evaluation;
- measure learning outcomes with real students rather than simulation;
- expand the governed content system beyond SAT Math;
- study longer-term learning-memory behavior across many sessions;
- explore verified model-assisted personalization while keeping educational truth and learner-state transitions protected by deterministic safeguards.
Our long-term goal is not to build another educational chatbot.
We want BridgeSAT to become a tutor that remembers what actually helped each learner, uses that evidence responsibly, and keeps supporting them even when the network does not cooperate.
Built With
- adaptive-learning
- ai-agents
- edtech
- fastapi
- indexeddb
- javascript
- long-term-memory
- offline-first
- postgresql
- progressive-web-app
- python
Log in or sign up for Devpost to join the conversation.