2024 · Clinical Education
Salem's Rounds
A study tool built for one exam, one person, and one very specific kind of pressure.
What it is
Salem's Rounds is a study web app built for the INCICh subspecialty selection exam — the cardiology fellowship entrance at Mexico's National Institute of Cardiology. The exam covers internal medicine broadly, not just cardiology.
Built for Karina. Operated and developed by Enrique.
What it contains
| Layer | Scale |
|---|---|
| Wiki | 450 synthesized clinical pages across 10 medical modules |
| Flashcards | 2,203 SM-2 spaced-repetition cards with due-date scheduling |
| MCQ bank | 387 curated exam questions + 352 AI-generated, validated against source |
| Temario checklist | Full INCICh syllabus mapped to wiki pages — tracks real study progress |
Modules
Gastroenterología · Infectología · Reumatología · Neumología · Nefrología · Endocrinología · Hematología · Cardiología · Neurología · Misceláneas
Each module passed a blind QA gate: 0 data fixers, 0 actionable flags before publish.
How it works
The pipeline converts wiki/*.md → JSON at build time. Flashcards run SM-2 to schedule review by dueAt. The checklist measures progress by syllabus items, not raw page count.
Profile-based progress: each user profile stores state in localStorage and syncs to Vercel Blob (/api/profile). If the API is unavailable, local progress is preserved and a discrete sync indicator shows status.
Stack
- Frontend: Vite + React 18 + TypeScript + React Router
- Rendering:
react-markdownfor wiki pages - Data pipeline: custom
build:datascript — wiki →wiki.generated.json, flashcards →flashcards.generated.json, MCQ →quiz.generated.json - Sync: Vercel Blob (private) for profile progress
- Deploy: Vercel (GitHub-connected, auto-deploy on push)
- Responsive: desktop full navigation · mobile bottom tab bar, no embedded PDFs
Status
v0.19.1 · Live · F0–F7 complete. All ten modules closed. Post-MVP work: UX refinement, full-text search, PWA/offline support.