Skip to content

v1.6.0 — Functional Completeness

Choose a tag to compare

@aderamdani aderamdani released this 07 Jun 15:18
· 2 commits to main since this release

v1.6.0 — Functional Completeness

New Fixes

  • FlashcardView: Added empty-state guard with ContentUnavailableView (bilingual messages)
  • Onboarding Step 2: Language selection now functional with visual feedback (checkmark, highlight, border)
  • Onboarding Step 5: Microphone permission with denied state, skip button, System Settings guidance
  • DailyLessonView: 'Mulai Tantangan' generates 5 random exercises from grammar levels A1/A2/B1
  • DailyLessonView: Updates DailyStreak via addActivity() after exercise completion
  • ContentView Search: Implemented .searchable filtering with SearchResultsView (searches vocabulary + lessons)
  • EngLearnApp: Critical fix — registered all 7 SwiftData models in modelContainer (was empty [])
  • B1 Content: Expanded vocabulary_b1.json (30 words), reading_b1.json (5 passages, 3 quiz each), listening_b1.json (5 dialogues, 2 exercises each), writing_b1.json (10 prompts)

Build Fixes

  • Removed Equatable conformance from SearchResults (Lesson/VocabularyEntry not Equatable)
  • Added missing import OSLog in OnboardingView

Verified Working (no changes needed)

  • VocabularyModuleView seedVocabulary, SpeechRecognitionService, AchievementService.checkAndUnlock
  • DictationView TTS audio, WritingPromptView auto-save, PhonemeGuideView speech recognition
  • ImmersionZoneView idioms, LevelTestView adaptive difficulty, SettingsView export
  • Keyboard shortcuts Cmd+1-8, LevelTest → onboarding callback