a663bc03cd766535d74ed904540a9b65af117d56
New features: - Offline Dictionary: reverse index of 175K verb forms + 200 common words, cached to disk, powers instant word lookups in Stories - Vocab SRS Review: spaced repetition for course vocabulary cards with due count badge and Again/Hard/Good/Easy rating - Cloze Practice: fill-in-the-blank using SentenceQuizEngine with distractor generation from vocabulary pool - Grammar Exercises: interactive quizzes for 5 grammar topics (ser/estar, por/para, preterite/imperfect, subjunctive, personal a) with "Practice This" button on grammar note detail - Listening Practice: listen-and-type + pronunciation check modes using Speech framework with word-by-word match scoring - Conversational Practice: AI chat partner via Foundation Models with 10 scenario types, saved to cloud container Other changes: - Add Conversation model to SharedModels and cloud container - Add Info.plist keys for speech recognition and microphone - Skip speech auth on simulator to prevent crash - Fix preparing data screen to only show during seed/migration - Extract courseDataVersion to static property on DataLoader - Add "How Features Work" reference page in Settings Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Conjuga
A Spanish verb conjugation learning app for iOS. Practice all 20 tenses with spaced repetition, handwriting recognition, and vocabulary courses.
Features
- Conjugation Practice — Flashcards, typing, multiple choice, handwriting, sentence building, and full table modes
- Spaced Repetition — SM-2 algorithm tracks what you know and surfaces what you don't
- 1,750 Verbs — From basic to expert, with irregular form highlighting
- 20 Tenses — Every indicative, subjunctive, conditional, and imperative tense
- Grammar Guide — 20 tense guides with conjugation tables + 20 grammar topic notes (Ser vs Estar, Por vs Para, etc.)
- Vocabulary Courses — Weekly decks with example sentences
- Progress Tracking — Streaks, daily goals, accuracy stats, and achievement badges
- CloudKit Sync — Review progress syncs across devices
- Widgets — Daily progress, word of the day, and weekly stats
- Text-to-Speech — Hear any verb pronounced in Spanish
Architecture
- SwiftUI + SwiftData with a dual-store configuration:
- Local store — Reference data (verbs, forms, guides) seeded from JSON on first launch
- Cloud store — User data (review cards, progress, streaks) synced via CloudKit
- SharedModels package shared between the app and widget extension
Requirements
- iOS 18+
- Xcode 16+
Building
Open Conjuga/Conjuga.xcodeproj in Xcode and run on a simulator or device. Data seeds automatically on first launch.
Description
Languages
Swift
91%
Python
6.1%
HTML
2.9%