Changelog
Every meaningful change to the atlas — features, content updates, fixes — in reverse chronological order. Visiting this page clears your 'new' badge in the sidebar.
Pre-release verification pass — four bug fixes
FixPerfEnd-to-end verification before shipping: type, lint, test, build, and runtime checks across the whole atlas. Caught and fixed four real bugs ranging from a stylistic regression to a hydration mismatch.
- Fixed broken tinted backgrounds across QuizEngine, CaseRunner, PracticeClient, and WaveformSimulator. The old `${tokens.color.X}NN` hex+alpha pattern silently became invalid CSS once tokens switched to CSS variables; answer-reveal highlights were rendering transparent. Replaced with a new tint() helper using color-mix().
- Fixed the timed quiz personal best not updating when the round auto-finished on time-out. Extracted maybeUpdateBest() and called it from both manual finish and the auto-finish effect.
- Fixed a memory leak in the waveform simulator drag handlers. Each render's new handler identity was being added as a listener and the wrong identity removed, stacking listeners across drags. Rewrote with stable refs.
- Fixed a hydration mismatch on the pattern recognition trainer caused by Math.random() in useState initial value. Now seeds with a fixed value for SSR and randomises after first paint.
- Added a regression test that scans the source tree for the old broken-tint pattern so it can never re-enter the codebase.
Polish & memorability — narration, dashboard, changelog
NewContentThree orientations for studying: audio walkthrough scripts on the major modules, a Your Progress dashboard pulling every locally-stored signal into one view, and the very page you're reading.
- Audio walkthrough player on Anatomy, Technique, Normal waves, SCD, and Neuritis — collapsed by default, expands to the timestamped narration script. Falls back to text gracefully when no audio file is recorded yet.
- Progress dashboard at /progress: chapters visited, time on atlas, quiz progress by level, Leitner and Streak deck stats, timed-mode best score, bookmarked terms, per-chapter time.
- Per-module 'Save as PDF / print' button now uses A4 page geometry and tightened pagination — figures, tables and headings hold together across page breaks.
- Changelog page (this one) with sidebar badge that announces unseen entries.
Quiz upgrades — timed mode, topic filter, deep links, streak SRS
NewThe quiz gained three top-level modes and several power tools: Browse with both level + topic filters, Spaced review with Leitner-box and 3-in-a-row sub-strategies, and Timed (ten random questions in five minutes).
- 11-topic taxonomy across every question — anatomy, technique, interpretation, and disease-specific tags compose with the existing difficulty filter.
- Streak-based SRS as an alternative to the Leitner scheduler. Three correct in a row graduates a card; a miss resets to zero. Both decks coexist; the user picks per session.
- Deep-linked 'Read more →' links from every explanation, landing on the relevant chapter section via anchor id.
- Timed mode persists a personal best (correct + fastest time) in localStorage.
Pattern recognition trainer + compare overlay + per-disease audiograms
NewContentRandom-archetype practice generator at /practice, an overlay mode on /compare so two diseases share one set of axes, and a representative audiogram on every disease page to tie the testing battery together.
- Nine archetypes covering the major disease patterns; each instantiation produces a slightly different trace (mild jitter) so cases are effectively infinite.
- Seven-finding vocabulary (reduced amplitude, augmented amplitude, absent response, prolonged latency, asymmetric, lowered threshold, frequency-tuning shift) graded against the archetype's truth set.
- Compare page now offers Overlay (one set of axes, both traces) and Panels-vs-normal (two side-by-side comparisons).
- Every disease page now pairs its VEMP signature with a representative audiogram and a teaching caption.
Clinical cases, spaced repetition, drag P1/N1, dark mode, animated reflex arc
NewA first round of post-launch upgrades focused on interactivity and bedside-style learning.
- 8 hand-authored clinical cases at /cases with vignette → tests → diagnosis → teaching point.
- Leitner-box spaced repetition tab in the quiz, persisted to localStorage.
- P1 and N1 are now draggable handles on the waveform simulator.
- Side-by-side comparison page comparing any disease against a normal reference.
- Light / Dark / Auto theme toggle in the sidebar, respecting prefers-color-scheme.
- Reflex arc diagram pulses now travel along each path, illustrating signal flow.
Initial Next.js rebuild with interactive simulator
NewThe atlas was rebuilt from the static HTML prototype into a TypeScript-strict Next.js 14 static export, matching the prior VNG Atlas stack.
- Hand-rolled SVG waveform simulator with adjustable P1, N1, and amplitude sliders for both ears.
- Layered content (Foundation / Trainee / Clinician), per-page level filter.
- Search across chapters and glossary, keyboard-accessible.
- 24-question self-assessment with explanations.