Android App
// SPACED REPETITION VOCABULARY TRAINER
Overview
Lingodeck is a native Android application designed to bridge the gap between "learning" a word and "retaining" it. Built with Kotlin and Jetpack Compose, the app leverages a Spaced Repetition System (SRS) to optimize study sessions by predicting the exact moment a user is likely to forget a piece of vocabulary.
- Role: Lead Developer (Full Android implementation, Database Architecture, UI Logic).
- Collaborator: Diana Simonicova (UI/UX Design, Research Plan).
- Stack: Kotlin, Jetpack Compose, Room Database.
The Problem & Solution
The Challenge: Language learners often waste time over-studying familiar words or neglecting difficult ones when using static lists.
The Solution: A distraction-free tool that handles complex scheduling logic in the background, presenting only "due" cards to maximize retention and minimize study time.
System Architecture & Design
To ensure a seamless user experience, we prioritized a robust data structure and a minimalist interface:
- Local Persistence: Used Room Database to manage Decks, Flashcards, and Study Sessions locally.
- Core Loop: A gesture-based study mode where users swipe to grade their memory retention, providing immediate database updates.
- Data Model: Architected an ERD that logs history for study sessions, allowing for future progress tracking.
Research & Iteration
We didn't just build; we validated. We conducted moderated in-person usability tests with five participants.
- The Findings: While we achieved a 100% Task Success Rate, users initially struggled with gesture discoverability (knowing when to swipe vs. tap).
- The Pivot: Based on feedback, I implemented visual swipe hints (rotation animations) and adjusted the button hierarchy (color-coding the 'Practice' vs. 'Review' actions) to clarify the primary path.
- Outcome: These changes improved the Single Ease Question (SEQ) score to 5.8/7.
Reflection & Future Work
This project taught me the value of aligning a design system with technical data structures early in the process. By defining the Room entities before coding, I avoided major refactors during the UI development.
What's next?
- Cloud Sync: Integrating Firebase for cross-device studying.
- Retention Heatmaps: Advanced statistics to visualize learning patterns over time.




