OtaskuLang
A mobile-first AI language practice app that generates a daily Bento of personalized learning cards. The app focuses on short practice loops for Japanese, Spanish, and Korean, combining onboarding, level-based preferences, generated study content, progress tracking, quizzes, short stories, and text-only conversation practice.
OtaskuLang explores how AI-generated practice can stay useful inside a constrained daily routine instead of becoming an open-ended chat surface. The Bento model turns generated content into scoped cards that can be studied, skipped, completed, saved, and reviewed.
- How to personalize daily practice by language, level, and user preference
- How to mix generated vocabulary, grammar, stories, quizzes, and conversation
- How to validate and normalize AI-generated language content before display
- How to keep production-like paths strict when auth or AI configuration is missing
- How to connect mobile practice loops to durable backend state
- AI-generated Daily Bento packs for short, repeatable practice
- Language onboarding and level selection for Japanese, Spanish, and Korean
- Daily language rotation based on saved preferences and current date
- Progress tracking for completion, skips, saves, quiz answers, and study selections
- Text-only AI conversation sessions with corrections and vocabulary suggestions
- Short story study mode with selectable words and phrases
- External Anki and AnkiWeb companion actions
- Kotoba Senpai quick-help assistant for translation, grammar, rewrites, and furigana help
- Expo React Native mobile app with Expo Router and TypeScript
- Local Next.js API layer for backend routes
- Supabase Auth with local development fallback
- Neon Postgres persistence with SQL migrations
- Upstash Redis caching for prompt and Daily Bento content
- OpenAI-powered generation with configurable model selection
- AsyncStorage support for local Expo development paths
- Production-like runtime paths fail closed when required services are missing
AI and content generation
The app uses OpenAI-powered generation to produce structured Daily Bento content and conversation replies when configured. Generated content is treated as application data: it is normalized, validated, cached by user/date/environment, and presented through bounded study modes instead of being treated as final authority.
- Expo, React Native, React, Expo Router, and TypeScript for the mobile app
- Next.js backend API routes for local and production-like service paths
- Supabase Auth, Neon Postgres, Upstash Redis, and AsyncStorage
- OpenAI API for Bento generation, conversation responses, and assistant support
Current status
Active / Building. The project has production-like backend paths and integrated auth, persistence, caching, and AI generation patterns, while some external content provider integrations are still future work. Public descriptions should avoid claiming a public launch, production traffic, or complete song, article, or video provider integrations.