Education 2026 · Prototype · 3/4

Serbian Road Rules: Interactive Situations

A mobile textbook prototype where a traffic rule becomes a 2D scene: pick an action, watch the consequences play out, then read the explanation.

  • TypeScript
  • React
  • Vite
  • Canvas 2D
  • Custom traffic solver
Serbian Road Rules: Interactive Situations

Overview

Studying for a Serbian driving licence from a 133-page lecture summary, I wanted the rules to be something you experience rather than memorize. In this prototype each rule is a road situation drawn on a 2D canvas: you see the intersection, choose what to do, the scene animates and shows what happens, and only then does the explanation appear. The key difference from a scripted scene is that the outcome is not written in advance. The road is made of lanes, every vehicle has its own route and dynamics, and a collision, a missed obligation or a blocked intersection is derived from what actually happened in the simulation. The author describes the intent (“you turn right from the south, a pedestrian steps onto the crossing”); the solver computes the rest. A build-time check runs every variant and fails if a situation does not have exactly one correct answer.

What it does

05
01Learn by Consequence
Choose an action and watch what it leads to before reading the rule.
02Simulated, Not Scripted
Lanes, routes and vehicle dynamics decide the outcome; violations are detected from what happened.
03Sourced From the Real Course
Situations are mapped to pages of the driving-school summary, with a coverage report of the syllabus.
04Mobile-First
Designed for a 360–430 px screen and shown as a phone column on desktop.
05Verified Answers
The build runs every variant and fails unless exactly one option is correct.

Progress

3/4
  1. 01 Course Analysis Extracted and indexed the driving-school summary; selected rules that can be visualized.
  2. 02 World Engine Lanes, routes, vehicle dynamics and a solver that derives outcomes.
  3. 03 First Situations Initial set of intersection situations with animated consequences.
  4. 04 Public Release Expanding coverage of the syllabus before publishing.
Further down the ledger All projects →
2026 PrivacyCleaner Kotlin · Android · EXIF 2/4 In development 2025 LinkedIn Cover Letter JavaScript · Browser Extension · Python 3/3 Released 2025 Spotify BPM JavaScript · Browser Extension · Spotify API 4/4 Released