https://github.com/lelabdev/durianlinguo
https://github.com/lelabdev/durianlinguo
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/lelabdev/durianlinguo
- Owner: lelabdev
- Created: 2025-11-14T02:24:18.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-11-14T02:44:17.000Z (7 months ago)
- Last Synced: 2025-11-14T04:27:48.847Z (7 months ago)
- Language: Svelte
- Size: 727 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🍈 Durianlinguo - Learn Bisaya
> **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.
---
## 🎯 What is This?
**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.
### Why 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!)
---
## ✨ Features
- **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
---
## 🚀 Quick Start
### Prerequisites
- **Node.js** 18 or higher
- **pnpm** (recommended) or npm
### Installation & Setup
```bash
# 1. Clone the repository
git clone https://github.com/lelabdev/durianlinguo/
cd durianlinguo
# 2. Install dependencies
pnpm install
# 3. Start development server
pnpm dev
```
The app will be running at **http://localhost:5173**
### Development Commands
```bash
# 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
```
---
## 🏗️ Tech Stack
- **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)
---
## 📁 Project Structure
```
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
```
---
## 🎓 How It Works
### Learning Algorithm
The app uses a **spaced repetition system** to optimize your learning:
1. **10 words per day** - A manageable daily goal
2. **Smart scheduling** - Words reappear based on your performance
3. **Mastery levels** - Track your progress from "new" to "known"
4. **Adaptive intervals** - Review words at increasing intervals: 1, 1, 3, 7, 16, 30 days
### Word Data
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
---
## 🎨 Design
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
---
## 🤝 Contributing
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
### Want to Help?
- **Repository**: [github.com/lelabdev/durianlinguo](https://github.com/lelabdev/durianlinguo/)
- **Contact**: contact@lelab.dev
- **Website**: [lelab.dev](https://lelab.dev/)
---
## 📝 Roadmap
- [x] **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)
---
## 📄 License
This project will be open-sourced under the MIT License once v1.0 is released.
---
## 👨💻 Author
**Ludo Loops** - French developer based in Davao, Philippines
Website: [lelab.dev](https://lelab.dev/)
Built with love for the people of Mindanao and anyone who wants to learn their beautiful language.
---
## 🙏 Acknowledgments
- 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
---
## 💬 Philosophy
> "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!** 🍈
---
## 📚 Resources
- [SvelteKit Documentation](https://svelte.dev/docs/kit)
- [Bisaya/Cebuano Language Resources](https://en.wikipedia.org/wiki/Cebuano_language)
- [Davao City](https://en.wikipedia.org/wiki/Davao_City)
---
**Built with SvelteKit** | **Powered by Durian** 🍈 | **Made in Davao** 🇵🇭 | [lelab.dev](https://lelab.dev/)