Skip to content

dbsectrainer/PolyglotPathways

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

48 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Polyglot Pathways: Multilingual Learning Platform

License: MIT CI Coverage Status

Overview

Polyglot Pathways is an innovative, cross-platform Flutter mobile application designed to facilitate comprehensive language learning across five languages: English, Spanish, Portuguese, French, and German. The platform offers a structured 50-day program that combines modern mobile development with sophisticated internationalization techniques.

Project Structure

graph TD
    subgraph User Interface
        A[HomeScreen] -->|Navigate| B[LessonScreen]
        B -->|Audio| C[AudioPlayer]
    end

    subgraph State Management
        D[LanguageService] -->|Provides| A
        E[ProgressService] -->|Tracks| A
        E -->|Updates| B
    end

    subgraph Resources
        F[assets/translations/] -->|Load| G[AppLocalizations]
        H[assets/audio/] -->|Stream| C
        I[SharedPreferences] -->|Persist| D
        I -->|Persist| E
    end

    subgraph User Interactions
        U[User] -->|Select Language| A
        U -->|Choose Day| B
        U -->|Play Audio| C
        U -->|Track Progress| E
    end

    style A fill:#f9f,stroke:#333,stroke-width:2px
    style B fill:#f9f,stroke:#333,stroke-width:2px
    style C fill:#bbf,stroke:#333,stroke-width:2px
    style D fill:#bbf,stroke:#333,stroke-width:2px
    style E fill:#bbf,stroke:#333,stroke-width:2px
    style I fill:#bfb,stroke:#333,stroke-width:2px
    style F fill:#fbb,stroke:#333,stroke-width:2px
    style H fill:#fbb,stroke:#333,stroke-width:2px

    classDef userNode fill:#fcf,stroke:#333,stroke-width:2px
    class U userNode
Loading
polyglot-pathways/
โ”‚
โ”œโ”€โ”€ lib/                           # Flutter source code
โ”‚   โ”œโ”€โ”€ main.dart                 # App entry point with multi-provider setup
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ models/                   # Data models
โ”‚   โ”‚   โ”œโ”€โ”€ language.dart        # Language enum and properties
โ”‚   โ”‚   โ”œโ”€โ”€ lesson.dart          # Lesson data model
โ”‚   โ”‚   โ”œโ”€โ”€ progress.dart        # User progress tracking
โ”‚   โ”‚   โ”œโ”€โ”€ achievement.dart     # Achievement definitions (NEW)
โ”‚   โ”‚   โ””โ”€โ”€ streak.dart          # Streak tracking model (NEW)
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ screens/                  # UI screens
โ”‚   โ”‚   โ”œโ”€โ”€ onboarding_screen.dart        # 4-page onboarding (NEW)
โ”‚   โ”‚   โ”œโ”€โ”€ main_navigation_screen.dart   # Bottom nav container (NEW)
โ”‚   โ”‚   โ”œโ”€โ”€ home_screen.dart              # Enhanced home with stats (UPDATED)
โ”‚   โ”‚   โ”œโ”€โ”€ lesson_screen.dart            # Enhanced audio player (UPDATED)
โ”‚   โ”‚   โ”œโ”€โ”€ profile_screen.dart           # User profile & stats (NEW)
โ”‚   โ”‚   โ”œโ”€โ”€ achievements_screen.dart      # Achievement gallery (NEW)
โ”‚   โ”‚   โ””โ”€โ”€ settings_screen.dart          # App settings (NEW)
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ widgets/                  # Reusable widgets
โ”‚   โ”‚   โ”œโ”€โ”€ language_card.dart
โ”‚   โ”‚   โ”œโ”€โ”€ course_structure.dart
โ”‚   โ”‚   โ””โ”€โ”€ day_grid.dart
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ services/                 # Business logic
โ”‚   โ”‚   โ”œโ”€โ”€ language_service.dart         # UI language management
โ”‚   โ”‚   โ”œโ”€โ”€ progress_service.dart         # Lesson progress tracking
โ”‚   โ”‚   โ”œโ”€โ”€ settings_service.dart         # App settings (NEW)
โ”‚   โ”‚   โ””โ”€โ”€ gamification_service.dart     # Achievements & streaks (NEW)
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ theme/                    # Theme configuration (NEW)
โ”‚   โ”‚   โ””โ”€โ”€ app_theme.dart       # Light/dark themes, colors, styles
โ”‚   โ”‚
โ”‚   โ””โ”€โ”€ utils/                    # Utilities
โ”‚       โ””โ”€โ”€ app_localizations.dart
โ”‚
โ”œโ”€โ”€ assets/                       # Application assets
โ”‚   โ”œโ”€โ”€ audio/                   # Multilingual audio content
โ”‚   โ”‚   โ””โ”€โ”€ day*_*.mp3          # 250 audio files (50 days ร— 5 languages)
โ”‚   โ”œโ”€โ”€ translations/            # Language resource files
โ”‚   โ”‚   โ”œโ”€โ”€ en.json             # English UI translations
โ”‚   โ”‚   โ”œโ”€โ”€ es.json             # Spanish UI translations
โ”‚   โ”‚   โ”œโ”€โ”€ pt.json             # Portuguese UI translations
โ”‚   โ”‚   โ”œโ”€โ”€ fr.json             # French UI translations
โ”‚   โ”‚   โ”œโ”€โ”€ de.json             # German UI translations
โ”‚   โ”‚   โ””โ”€โ”€ day.*.json          # Lesson-specific translations
โ”‚   โ””โ”€โ”€ lessons/                 # Lesson text content
โ”‚
โ”œโ”€โ”€ android/                     # Android platform code
โ”œโ”€โ”€ ios/                         # iOS platform code
โ”œโ”€โ”€ web/                         # Web platform code
โ”‚
โ”œโ”€โ”€ pubspec.yaml                # Flutter dependencies
โ””โ”€โ”€ language_phrases_days_*.py  # Content generation scripts

Key Architecture Components

New Files Added (UI/UX Overhaul)

  • 7 new screens: Onboarding, MainNavigation, Profile, Achievements, Settings
  • 2 new models: Achievement, Streak
  • 2 new services: SettingsService, GamificationService
  • 1 new theme system: Comprehensive light/dark theme configuration

Updated Files

  • main.dart: Multi-provider setup, theme switching, onboarding logic
  • home_screen.dart: Streak display, daily goals, enhanced stats
  • lesson_screen.dart: Speed control, loop mode, achievement notifications

Key Technologies and Skills Demonstrated

1. Flutter Mobile Development

  • Cross-platform mobile application (Android, iOS, Web)
  • Modern Material Design 3 UI
  • Responsive, mobile-first design
  • Provider state management
  • SharedPreferences for data persistence

2. Internationalization (i18n)

  • Dynamic multilingual support
  • Seamless language switching
  • Comprehensive translation management
  • Support for 5 languages:
    • ๐Ÿ‡ฌ๐Ÿ‡ง English
    • ๐Ÿ‡ช๐Ÿ‡ธ Spanish
    • ๐Ÿ‡ง๐Ÿ‡ท Portuguese
    • ๐Ÿ‡ซ๐Ÿ‡ท French
    • ๐Ÿ‡ฉ๐Ÿ‡ช German
stateDiagram-v2
    [*] --> English
    English --> ContentLoading
    Spanish --> ContentLoading
    Portuguese --> ContentLoading
    French --> ContentLoading
    German --> ContentLoading
    
    ContentLoading --> UpdateUI
    UpdateUI --> SaveState
    SaveState --> [*]
    
    state ContentLoading {
        [*] --> LoadTranslations
        LoadTranslations --> LoadAudio
        LoadAudio --> [*]
    }
Loading

3. Educational Technology

  • Structured 50-day learning curriculum
  • Progressive learning path
  • Interactive lesson interfaces
  • Multimedia learning approach (text + audio)

4. Content Generation

  • Python-based content generation scripts
  • Systematic content organization
  • Scalable content management

5. Audio Processing

  • Multilingual audio file management
  • Text-to-speech integration
  • Cross-language audio content

Course Structure

flowchart TD
    A[Start Learning Journey] --> B[Days 1-7]
    B --> C[Days 8-15]
    C --> D[Days 16-26]
    D --> E[Days 27-31]
    E --> F[Days 32-50]
    
    B --- B1[Basic Vocabulary]
    B --- B2[30min/day]
    B --- B3[Core Grammar]
    
    C --- C1[Advanced Communication]
    C --- C2[45min/day]
    C --- C3[Cultural Context]
    
    D --- D1[Global Living]
    D --- D2[60min/day]
    D --- D3[Professional Skills]
    
    E --- E1[Tech Professional]
    E --- E2[60min/day]
    E --- E3[Industry Terms]
    
    F --- F1[Advanced Professional]
    F --- F2[90min/day]
    F --- F3[Business Fluency]
    
    style B fill:#e6f3ff
    style C fill:#e6f3ff
    style D fill:#e6f3ff
    style E fill:#e6f3ff
    style F fill:#e6f3ff
    
    classDef timeNode fill:#f9f,stroke:#333
    class B2,C2,D2,E2,F2 timeNode
Loading

Learning Phases

  1. Basic Vocabulary (Days 1-7)

    • Fundamental communication skills
    • Core grammar and phrases
  2. Advanced Communication (Days 8-15)

    • Professional and cultural expressions
    • Complex conversation techniques
  3. Global Living (Days 16-26)

    • Professional and daily life vocabulary
    • Cross-cultural communication skills
  4. Tech Professional Content (Days 27-31)

    • Industry-specific terminology
    • Digital communication skills
  5. Advanced Professional Skills (Days 32-50)

    • Academic and business communication
    • Complex negotiation techniques

Technical Requirements

  • Flutter SDK 3.0.0 or higher
  • Dart SDK 3.0.0 or higher
  • Android Studio / Xcode (for mobile development)
  • A physical device or emulator

Development Setup

1. Install Flutter

Follow the official Flutter installation guide for your operating system: https://docs.flutter.dev/get-started/install

2. Clone the Repository

git clone https://github.com/dbsectrainer/PolyglotPathways.git
cd PolyglotPathways

3. Install Dependencies

flutter pub get

4. Run the Application

For Android

flutter run -d android

For iOS

flutter run -d ios

For Web

flutter run -d chrome

5. Build for Production

Android APK

flutter build apk --release

iOS

flutter build ios --release

Web

flutter build web --release

Features

๐ŸŽจ Modern UI/UX (Industry-Standard Design)

  • Bottom Navigation: 4-tab navigation (Home, Achievements, Profile, Settings)
  • Onboarding Flow: Beautiful welcome screens with smooth animations
  • Dark Mode: Full dark theme support with automatic switching
  • Accessibility: Text scaling (0.85x - 1.3x), high contrast, screen reader support
  • Animations: Smooth transitions and micro-interactions using flutter_animate
  • Material Design 3: Modern, polished interface following latest design guidelines

๐ŸŽฎ Gamification System

  • Achievements: 17 unique achievements across 4 categories
    • Lesson milestones (First Lesson, 10/25/50 lessons completed)
    • Streak rewards (7, 14, 30, 100 day streaks)
    • Multilingual badges (Bronze, Silver, Gold polyglot)
    • Special achievements (Early Bird, Night Owl, Speed Learner)
  • Streak Tracking: Daily learning streak with longest streak record
  • Progress Visualization: Interactive charts showing progress across all languages
  • Daily Goals: Customizable daily lesson targets (1-10 lessons/day)
  • Achievement Notifications: Celebrate unlocks with confetti and snackbars

๐ŸŽต Enhanced Audio Player

  • Playback Speed Control: 0.5x to 2.0x speed (6 preset speeds)
  • Repeat/Loop Mode: Continuous playback for practice
  • Quick Navigation: 10-second forward/backward buttons
  • Restart Function: One-tap restart to beginning
  • Progress Slider: Precise seeking to any position
  • Real-time Duration: Current position and total duration display

๐Ÿ“Š Advanced Progress Tracking

  • Multi-Language Dashboard: Track progress across all 5 languages
  • Interactive Charts: Bar charts showing lessons completed per language
  • Streak Visualization: Current streak, longest streak, total lessons
  • Daily Goal Progress: Real-time progress toward daily targets
  • Recent Activity: Timeline of recent achievements and completions
  • Overall Statistics: Comprehensive stats on profile screen

๐ŸŽฏ Profile & Settings

  • User Profile: Personal stats, achievement count, language progress
  • Customizable Settings:
    • Dark/Light theme toggle
    • Text size adjustment (4 presets)
    • Daily goal configuration
    • Sound effects toggle
    • Notification preferences
    • Interface language selection
  • Data Management: Reset settings or progress options
  • Tutorial Access: Re-view onboarding anytime

๐ŸŒ Core Features

  • Cross-platform mobile application (Android, iOS, Web)
  • Progress tracking with local persistence
  • Multilingual content in 5 languages
  • High-quality audio playback with advanced controls
  • Responsive design optimized for mobile devices
  • SharedPreferences-based session persistence
  • Offline-first architecture
  • Provider-based state management
  • Custom internationalization system

๐Ÿ“ฑ Navigation Structure

App Entry
โ”œโ”€โ”€ Onboarding (First Launch)
โ”‚   โ””โ”€โ”€ 4-screen tutorial with animations
โ””โ”€โ”€ Main Navigation (Bottom Tabs)
    โ”œโ”€โ”€ Home Tab
    โ”‚   โ”œโ”€โ”€ Streak display
    โ”‚   โ”œโ”€โ”€ Daily goal tracker
    โ”‚   โ”œโ”€โ”€ Language selection cards
    โ”‚   โ””โ”€โ”€ Day grid for selected language
    โ”œโ”€โ”€ Achievements Tab
    โ”‚   โ”œโ”€โ”€ Progress header (X/17 unlocked)
    โ”‚   โ”œโ”€โ”€ Category tabs (All, Lessons, Streaks, Languages, Special)
    โ”‚   โ””โ”€โ”€ Achievement cards with unlock status
    โ”œโ”€โ”€ Profile Tab
    โ”‚   โ”œโ”€โ”€ Profile header with streak
    โ”‚   โ”œโ”€โ”€ Statistics overview (4 stat cards)
    โ”‚   โ”œโ”€โ”€ Progress by language (bar chart)
    โ”‚   โ””โ”€โ”€ Recent activity timeline
    โ””โ”€โ”€ Settings Tab
        โ”œโ”€โ”€ Appearance (dark mode, text size)
        โ”œโ”€โ”€ Learning (daily goal, hints)
        โ”œโ”€โ”€ Audio & Sound (effects toggle)
        โ”œโ”€โ”€ Notifications (reminders)
        โ”œโ”€โ”€ Interface Language
        โ””โ”€โ”€ Data Management

Global Impact

  • Communicate with ~2 billion people
  • Access to international job markets
  • Enhanced cross-cultural communication skills

License

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

Contributing

We welcome contributions! Please see our Contributing Guidelines for details on:

  • Reporting bugs
  • Suggesting enhancements
  • Code contributions
  • Documentation improvements
  • Translation contributions
  • Pull request process

All contributors must adhere to our Code of Conduct.

๐Ÿ‘ค Author & Maintainer

This repository is maintained by Donnivis Baker. For questions or feedback, please open an issue or reach out directly.

About

No description or website provided.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •