Skip to content

Sinhala Moolakuru is an open-source Sinhala root word (මූලකුරු) dataset and toolset designed to support linguistic analysis, NLP development, and Sinhala language education.

License

Notifications You must be signed in to change notification settings

janithsuraweera/Sinhala-Moolakuru

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sinhala Moolakuru - Sinhala Typing Tutor

Sinhala Moolakuru is an interactive web-based Sinhala typing tutor designed to help users learn and practice typing in Sinhala script. This project provides comprehensive typing lessons, exercises, and real-time feedback to improve Sinhala typing skills.

🌱 Features

  • Interactive Typing Lessons: Step-by-step lessons covering Sinhala alphabet, character combinations, and word formation
  • Multiple Keyboard Methods: Support for both Phonetic and Wijesekara keyboard layouts
  • Customizable Difficulty: Easy, Medium, Hard, and Custom difficulty levels
  • Timer-based Practice: Configurable time limits (1, 2, 3 minutes) for focused practice sessions
  • Real-time Feedback: Instant feedback on typing accuracy and speed
  • Dark/Light Mode: Toggle between dark and light themes for comfortable learning
  • Mobile Responsive: Works seamlessly on desktop and mobile devices
  • Audio Feedback: Sound effects for correct and incorrect typing
  • Progress Tracking: Monitor your typing speed and accuracy improvements
  • Progressive Web App (PWA): Install as a native app on your device
  • Offline Support: Works without internet connection after initial load
  • Install Prompt: Easy installation from browser with install button

📁 Project Structure

Sinhala-Moolakuru/
├── index.html          # Main application interface
├── lessons.html        # Lessons page
├── manifest.json       # PWA manifest configuration
├── sw.js              # Service worker for offline functionality
├── assets/             # Images and audio files
│   ├── logo.png        # Application logo
│   ├── success.mp3     # Success sound effect
│   └── error.mp3       # Error sound effect
├── css/                # Stylesheets
│   └── styles.css      # Main application styles
├── js/                 # JavaScript files
│   └── app.js          # Main application logic
├── lessons/            # Lesson-related files
│   ├── lessons.css     # Lesson-specific styles
│   ├── lessons.js      # Lesson functionality
│   └── lessons-data.js # Lesson content and data
├── sound/              # Additional audio files
├── ads/                # Advertisement assets
└── README.md           # Project documentation

🚀 Getting Started

Prerequisites

  • A modern web browser (Chrome, Firefox, Safari, Edge)
  • No additional software installation required

Installation

  1. Clone the repository:
git clone https://github.com/janithsuraweera/Sinhala-Moolakuru.git
cd Sinhala-Moolakuru
  1. Open index.html in your web browser to start using the application.

Installing as PWA

  1. Open the application in a modern browser (Chrome, Edge, Firefox)
  2. Look for the "Install" button in the browser address bar or the floating "📱 Install App" button
  3. Click "Install" to add the app to your device
  4. The app will now work offline and appear like a native application

📚 How to Use

Basic Typing Practice

  1. Select your preferred difficulty level (Easy, Medium, Hard, or Custom)
  2. Choose your keyboard method (Phonetic or Wijesekara)
  3. Set your practice time (1, 2, or 3 minutes)
  4. Click "Start" to begin your typing session
  5. Type the displayed Sinhala text in the input field
  6. Monitor your progress with the timer and accuracy metrics

Interactive Lessons

  1. Navigate to the Lessons section
  2. Choose from various lesson categories:
    • Basic Alphabet: Learn individual Sinhala characters
    • Character Combinations: Practice consonant-vowel combinations
    • Word Formation: Build vocabulary through typing exercises
  3. Follow the guided lessons with step-by-step instructions
  4. Practice with provided examples and exercises

Custom Text Practice

  1. Select "Custom" difficulty level
  2. Paste your own Sinhala text in the custom text area
  3. Practice typing with your chosen content

⌨️ Keyboard Methods

Phonetic Method

  • Type Sinhala using English phonetic equivalents
  • Example: ka = ක, kA = කා, ki = කි

Wijesekara Method

  • Use the traditional Wijesekara keyboard layout
  • Example: k = ක, kA = කා, ki = කි

🎯 Learning Path

  1. Beginner: Start with basic alphabet lessons
  2. Intermediate: Practice character combinations and simple words
  3. Advanced: Work on complex words and sentences
  4. Expert: Use custom text for specialized practice

🛠️ Technical Features

  • Responsive Design: Works on all device sizes
  • Progressive Web App (PWA): Can be installed on mobile devices
  • Offline Functionality: Works without internet connection
  • Service Worker: Caches resources for offline access
  • Install Prompt: Automatic installation suggestion
  • Local Storage: Saves your preferences and progress
  • Modern Web Standards: Uses latest web technologies

🤝 Contributing

We welcome contributions to improve the Sinhala typing tutor! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Add new lessons or improve existing ones
  4. Enhance the user interface or add new features
  5. Test your changes thoroughly
  6. Commit your changes (git commit -m 'Add some feature')
  7. Push to the branch (git push origin feature/your-feature)
  8. Create a Pull Request

Areas for Contribution

  • Add new typing lessons and exercises
  • Improve the user interface design
  • Add more keyboard layout support
  • Create additional practice materials
  • Enhance accessibility features
  • Add multiplayer or competitive features

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgements

  • Sinhala Language Community: For preserving and promoting Sinhala script
  • Unicode Consortium: For comprehensive Sinhala Unicode support
  • Open Source Contributors: For supporting local language tools and education
  • Educational Institutions: For promoting Sinhala language learning

📞 Support

If you have questions, suggestions, or encounter issues:

  • Open an issue on GitHub
  • Contact the maintainers
  • Join the community discussions

Happy Typing! සුභ ටයිපිං! 🇱🇰

About

Sinhala Moolakuru is an open-source Sinhala root word (මූලකුරු) dataset and toolset designed to support linguistic analysis, NLP development, and Sinhala language education.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published