Learn the 300 core words of Bisaya (Cebuano) - the language of Davao, Philippines
A free, open-source language learning app built with SvelteKit, featuring interactive flashcards and spaced repetition to help you connect with the local culture.
Durianlinguo is a language learning app designed specifically for teaching Bisaya (Cebuano) to English speakers. Created by a French developer living in Davao, this app was born from the frustration of finding almost no learning materials for Bisaya.
If you're moving to Davao or visiting Mindanao, Bisaya is the language you'll hear every day. This app teaches you 300 core words - not to make you fluent, but to help you:
- Order taho at the market
- Ask for directions
- Say "thank you" the right way
- Show respect for the local culture
- Feel a little more at home
As we say in Davao: "Durian gyud!" (For real!)
- Interactive Flashcards - Learn through multiple-choice quizzes
- Spaced Repetition System - Smart algorithm that shows you words when you need to review them
- 300 Curated Words - Carefully selected core vocabulary organized by category
- Pronunciation Guides - Phonetic guides for every word
- Progress Tracking - Track your learning journey with mastery scores and streaks
- Categories - Greetings, food, family, numbers, directions, and more
- Progressive Web App (PWA) - Install on your phone for a native app experience with offline support
- Offline-First - All progress saved locally in your browser
- Node.js 18 or higher
- pnpm (recommended) or npm
# 1. Clone the repository
git clone https://github.com/lelabdev/durianlinguo/
cd durianlinguo
# 2. Install dependencies
pnpm install
# 3. Start development server
pnpm devThe app will be running at http://localhost:5173
# Development server (with network access)
pnpm dev
# Type checking
pnpm check
# Build for production
pnpm build
# Preview production build
pnpm preview
# Code formatting
pnpm format
# Linting
pnpm lint
# Run tests
pnpm test- Framework: SvelteKit 2.22 (Svelte 5 with runes)
- Language: TypeScript 5
- Styling: Tailwind CSS 4 + DaisyUI 5
- Build Tool: Vite 7
- PWA: vite-plugin-pwa with Workbox
- Testing: Vitest 3 + Playwright
- Deployment: Netlify
- Internationalization: @inlang/paraglide-js (en/es)
src/
├── routes/ # SvelteKit file-based routing
│ ├── learn/ # Main learning interface
│ ├── review/ # Progress dashboard
│ ├── all/ # Browse all words
│ └── test/ # Practice tests
├── lib/
│ ├── components/ # Reusable UI components
│ ├── learning/ # Learning algorithm & progress tracking
│ ├── store/ # State management (localStorage)
│ └── types/ # TypeScript definitions
└── content/
└── bisaya.json # 300 word database
The app uses a spaced repetition system to optimize your learning:
- 10 words per day - A manageable daily goal
- Smart scheduling - Words reappear based on your performance
- Mastery levels - Track your progress from "new" to "known"
- Adaptive intervals - Review words at increasing intervals: 1, 1, 3, 7, 16, 30 days
Each word includes:
- Bisaya word - The original word in Cebuano
- English translation - Clear, simple translation
- Pronunciation - Phonetic guide (e.g., "koo-MOOS-tah")
- Difficulty - Rated 1-5
- Category - Greetings, food, family, etc.
- Examples - Usage in context
The app features a custom DaisyUI theme called "bisaya-warmth" with Filipino-inspired warm colors:
- Primary Red (
#e63946) - Warm and welcoming - Warm Yellow (
#f1c453) - Sunny and bright - Deep Green (
#2e8b57) - Natural and grounded - Soft Cream (
#f4f1de) - Comfortable background
Font: Nunito Variable - Clean, friendly, and readable
This project is in active development and contributions are welcome! We're looking for:
- 🎨 Designers - Help refine the UI/UX
- 🗣️ Native Bisaya speakers - Record pronunciations, verify translations
- 💬 Language teachers - Help structure learning content
- 👨💻 Developers - Add features, fix bugs, improve code
- Repository: github.com/lelabdev/durianlinguo
- Contact: contact@lelab.dev
- Website: lelab.dev
- Progressive Web App support - Install on mobile with native app experience
- Complete 300 word database with audio
- Add audio pronunciations by native speakers
- Implement daily streak system
- Add achievement badges
- Create lesson modules (beyond flashcards)
- Reverse learning direction (Bisaya → English)
- Community features (share progress, compete)
This project will be open-sourced under the MIT License once v1.0 is released.
Ludo Loops - French developer based in Davao, Philippines Website: lelab.dev
Built with love for the people of Mindanao and anyone who wants to learn their beautiful language.
- The people of Davao for their patience with my terrible Bisaya
- The local community for providing learning resources
- Everyone who believes language learning should be free and accessible
"It's not about fluency, but connection and respect."
Learning just 300 words won't make you fluent, but it will help you:
- Show respect for the local culture
- Make meaningful connections
- Navigate daily life more comfortably
- Feel more at home in Davao
Because if you live somewhere, if you love a place, you should be able to speak its language - not just survive in it.
Durian gyud! 🍈
Built with SvelteKit | Powered by Durian 🍈 | Made in Davao 🇵🇭 | lelab.dev