A mobile language learning application that makes mastering Yoruba accessible and engaging through flashcards, audio pronunciation, and spaced repetition.
Learning Yoruba, a tonal West African language, presents unique challenges for learners. Traditional language learning apps don't adequately support tonal languages, and resources for Yoruba specifically are scarce. Learners needed a dedicated tool that could help them master vocabulary with proper pronunciation and retain what they learned over time.
Oluko is a mobile-first flashcard app designed specifically for Yoruba language learners. The app combines visual flashcards with audio pronunciation guides and implements spaced repetition algorithms to optimize memorization. Built with React Native for cross-platform compatibility and powered by a Haskell backend for reliability and performance.
Frontend: React Native with Expo for rapid cross-platform development. The app features a warm terracotta color scheme inspired by West African aesthetics, with smooth animations and intuitive navigation.
Backend: Haskell with Scotty framework, chosen for its type safety and functional programming paradigm. RESTful API architecture handles user authentication, flashcard delivery, and progress synchronization.
Database: PostgreSQL hosted on DigitalOcean, with careful schema design to support diacritic-insensitive search (critical for Yoruba characters) and efficient query performance.
Infrastructure: Deployed on DigitalOcean App Platform with automatic deployments from GitHub, ensuring zero-downtime updates and reliable scaling.
Diacritic Support: Yoruba uses tone marks that are essential to meaning. Implemented specialized search algorithms that handle diacritical marks correctly while maintaining fast performance.
Audio Delivery: Balanced audio quality with file size constraints for mobile. Used efficient compression while preserving tonal clarity essential for language learning.
Offline Functionality: Designed data synchronization strategy that allows full offline usage while seamlessly syncing progress when connectivity returns.
Oluko successfully launched on iOS and Android, providing Yoruba learners with a dedicated, culturally-aware learning tool. The app continues to evolve with user feedback, with plans for expanded vocabulary sets and community features.
If you have a project idea or challenge you'd like to discuss, I'd love to hear from you.