Spoken Mexican Spanish at your rhythm.
Try the live app →
Production deployment of main at joli.to
Jolito blends the proven power of spaced repetition flashcards with the audio immersion and friction-free flow of a modern practice app. Built for mastering real-world Mexican Spanish, Jolito turns daily language practice into a fast, rewarding habit—online or offline.
Jolito was born out of a real-life transition: moving to Mexico City with my Mexican wife and twin daughters, and taking intensive Spanish classes at International House in Condesa.
I needed a practical way to internalize what I learned in class and heard on the streets every day at home. While Anki provided the unbeatable spaced repetition algorithm needed for long-term retention, manually creating rich cards—clipping audio, finding pictures, and configuring templates—felt like an exhausting chore when I was tired at the end of the day. Capturing what you learned should feel effortless and fun, with the visual beauty, natural audio, and delightful flow state of modern apps like Duolingo. On the other end of the spectrum, gamified apps locked learners into rigid beginner courses without control over the real-world Mexican phrases they actually wanted to learn.
Jolito was created to bridge that gap: pairing the proven power of spaced repetition and multimodal learning with zero-friction card authoring, ear-first native Mexican Spanish audio, active typed recall, and a joyful keyboard flow.
| Anki | Duolingo | Jolito | |
|---|---|---|---|
| Focus | General-purpose | Rigid beginner courses | Real-world spoken language |
| Adding audio & cards | High friction (plugins, templates) | None (fixed curriculum) | Zero-friction authoring |
| Review experience | Flip-and-grade (typing requires template setup) | Multiple choice & word banks | Keyboard-first typed recall & audio out of the box |
| Learner control | 100% | Low | 100% (custom cards & Anki import) |
- Fast keyboard reviews: Fly through cards with
Enterto reveal,1–4to grade, andSpacefor audio. Inputs autofocus automatically so your hands never need to leave the keyboard. - Ear-first immersion: Spoken Mexican Spanish audio on prompts and answers trains your ear for everyday conversation.
- Active typed recall: Produce language instead of just recognizing it. Instant visual diffs highlight spelling nuances while you retain full authority over your self-grading.
- Live dual-card workbench: Create linked Spanish ↔ English reciprocal cards simultaneously with side-by-side previews, contextual explanations, and rapid batch creation.
- Offline lexicon assistant: Instant smart translations, lemmas, and verb conjugation suggestions powered by a bundled Mexican Spanish dictionary.
- Duplicate detection: Proactively catches and resolves duplicate cards across creation, deck management, and editing.
- Anki import: Bring existing Anki decks (
.apkgpackages or text exports) in seconds, preserving learning history and spaced-repetition schedules. - Native iOS app & tactile haptics: Package and run as a native iOS app via Capacitor, featuring sensory haptic feedback for card reveals and self-grading.
- Offline-first study: Installable PWA and native app with local storage and service worker caching. Once signed in, practice, create, and manage cards anywhere with zero network latency.
- Personal decks & cloud sync: Passwordless email sign-in unlocks your personal deck with seamless multi-device backup powered by Supabase.
Requires Node.js >=24 (Node 24 LTS or Node 26+) and npm.
# Clone & install
git clone https://github.com/smolkaj/jolito.git
cd jolito
npm ci
# Start the dev server
npm run devOpen http://localhost:5173. To test the installable, offline-capable production build:
npm run build && npm run previewOpen http://localhost:4173 once while online, then toggle offline in DevTools and reload.
ssh -L 5173:127.0.0.1:5173 -t <host> 'cd ~/src/jolito && npm ci && npm run dev -- --host 127.0.0.1'Mosh cannot carry the TCP port, so SSH provides the tunnel. Substitute a task worktree path for ~/src/jolito when reviewing unmerged work.
- Product Vision: Philosophy, core principles, and the target learner experience.
- Design Principles: Durable principles for visual hierarchy, interaction, copy, and coherence.
- Roadmap: Current progress, active tracks, and upcoming capabilities.
- Architecture: Hexagonal domain structure, local-first storage, and clean abstractions.
- Quality Guide: Test pyramid, accessibility invariants, and CI contracts.
- Development Guide: Supabase sync configuration, Cloudflare Workers deployment, and testing workflows.
Jolito is licensed under the Apache License 2.0.