Your intelligent voice assistant with inter-app control and Azure AI integration!
HordVoice is a cutting-edge voice assistant built with Flutter, powered by Azure AI services for advanced speech recognition, natural language processing, and text-to-speech capabilities. Control your apps, manage your tasks, and interact naturally with your device through voice commands.
Join us in making voice AI more accessible! We welcome contributions from developers of all skill levels.
๐ Contributing Guide โข ๐ Report Issues โข ๐ฌ Discussions
(Screenshots coming soon)
- Azure Speech Recognition: Real-time speech-to-text with high accuracy
- Wake Word Detection: Hands-free activation with "HordVoice"
- Continuous Recognition: Seamless voice interaction
- Phrase Hints System: Context-aware recognition optimization
- Multi-language Support: French (fr-FR) with extensible language system
- Noise Cancellation: Advanced audio processing for clear recognition
- Azure OpenAI Integration: GPT-powered conversation understanding
- Context-Aware Responses: Smart interpretation of voice commands
- Intent Recognition: Accurate command classification and execution
- Multi-turn Conversations: Maintain context across interactions
- Smart Fallbacks: Graceful handling of unrecognized commands
- Azure Neural Voices: High-quality, natural-sounding speech synthesis
- Voice Customization: Multiple voice options and styles
- Emotional Expression: Context-appropriate voice modulation
- Speed & Pitch Control: Personalized speech parameters
- Flutter TTS Fallback: Reliable offline voice synthesis
- Spotify Integration: Voice control for music playbook
- Calendar Management: Voice-activated calendar operations
- Location Services: GPS-based contextual responses
- App Launcher: Voice-controlled app navigation
- Smart Home Integration: IoT device control capabilities
- Voice Waveform Visualization: Live audio feedback
- Volume Level Monitoring: Automatic gain control
- Audio Quality Metrics: Real-time recognition confidence
- Background Processing: Continuous voice monitoring
- Audio Session Management: Optimized audio pipeline
- Secure Configuration: Environment-based API key management
- Local Data Storage: Privacy-first approach with local caching
- Encrypted Storage: Secure user preferences and voice profiles
- Permission Management: Granular access control
- Azure Security: Enterprise-level cloud security standards
- Material Design 3: Contemporary Android design language
- Dark/Light Themes: Adaptive UI based on system preferences
- Smooth Animations: Fluid transitions and micro-interactions
- Voice Activity Indicators: Visual feedback for voice interactions
- Accessibility Support: Screen reader and accessibility features
- Environment Management: Multiple deployment configurations
- API Key Management: Secure credential handling
- Service Toggles: Enable/disable specific features
- Performance Tuning: Adjustable recognition parameters
- Debug & Testing: Comprehensive development tools
lib/
โโโ main.dart : Application entry point
โ
โโโ core/ : Reusable base code
โ โโโ constants/
โ โ โโโ constants.dart : Global constants and configurations
โ โโโ config/
โ โโโ app_initializer.dart : App initialization and dependency injection
โ
โโโ features/ : Features by domain
โ โโโ voice/ : Voice interaction core
โ โ โโโ pages/
โ โ โ โโโ voice_home_page.dart : Main voice interface
โ โ โ โโโ voice_settings_page.dart : Voice configuration
โ โ โโโ widgets/
โ โ โโโ voice_waveform.dart : Audio visualization
โ โ โโโ voice_controls.dart : Voice control buttons
โ โ
โ โโโ apps/ : Inter-app integration
โ โ โโโ services/
โ โ โ โโโ spotify_service.dart : Spotify API integration
โ โ โ โโโ calendar_service.dart : Calendar management
โ โ โโโ pages/
โ โ โโโ app_control_page.dart : App control interface
โ โ
โ โโโ settings/ : Settings and configuration
โ โ โโโ pages/
โ โ โโโ settings_page.dart : Main settings
โ โ โโโ voice_profile_page.dart : Voice personalization
โ โ โโโ privacy_policy_page.dart : Privacy policy
โ โ
โ โโโ onboarding/ : First-time user experience
โ โโโ pages/
โ โโโ welcome_page.dart : App introduction
โ โโโ voice_setup_page.dart : Voice calibration
โ โโโ permissions_page.dart : Permission requests
โ
โโโ shared/ : Shared resources
โโโ models/
โ โโโ voice_models.dart : Voice interaction data models
โ โโโ app_models.dart : App integration models
โ โโโ user_models.dart : User profile models
โ
โโโ services/ : Business services
โ โโโ azure_speech_service.dart : Azure Speech Recognition
โ โโโ azure_openai_service.dart : Azure OpenAI integration
โ โโโ audio_pipeline_service.dart : Audio processing pipeline
โ โโโ wake_word_service.dart : Wake word detection
โ โโโ voice_management_service.dart : Voice profile management
โ โโโ environment_config.dart : Configuration management
โ โโโ permission_manager_service.dart: Permissions handling
โ โโโ integration_test_service.dart : Service testing suite
โ
โโโ widgets/ : Shared UI components
โโโ voice_indicator.dart : Voice activity indicator
โโโ audio_visualizer.dart : Audio waveform display
โโโ permission_dialog.dart : Permission request dialogs
android/
โโโ app/
โ โโโ src/main/kotlin/ : Native Android integration
โ โ โโโ MainActivity.kt : Azure Speech SDK native bridge
โ โโโ build.gradle : Android build configuration
โ โโโ src/main/ : Android resources and manifests
โโโ gradle/ : Gradle configuration
assets/
โโโ audio/ : Audio samples and sounds
โโโ images/ : App icons and illustrations
โโโ sounds/ : System sounds and notifications
HordVoice follows the Feature-First Clean Architecture with Azure AI integration:
core/: Application configuration and dependency injectionfeatures/: Feature modules organized by business domainshared/: Reusable services, models, and UI components- Native Integration: Kotlin-based Azure Speech SDK bridge
This architecture enables:
- ๐ฆ Scalable feature development
- ๐ Seamless Azure AI service integration
- ๐งช Comprehensive testing capabilities
- ๐ฅ Efficient team collaboration
- ๐ Easy deployment and maintenance
- Flutter 3.32.8 or higher
- Dart 3.8.0 or higher
- Android SDK 34 or higher
- Azure Cognitive Services account
- Azure OpenAI access (optional)
git clone https://github.com/HordRicJr/HordVoice.git
cd HordVoiceflutter pub getCreate a .env file from the template:
cp .env.example .envFill in your Azure credentials:
# Azure Speech Services
AZURE_SPEECH_KEY=your_azure_speech_key_here
AZURE_SPEECH_REGION=eastus
AZURE_SPEECH_ENDPOINT=https://eastus.api.cognitive.microsoft.com/
# Azure OpenAI (optional)
AZURE_OPENAI_ENDPOINT=https://your-instance.openai.azure.com/
AZURE_OPENAI_KEY=your_azure_openai_key_here
AZURE_OPENAI_DEPLOYMENT=chat
# Additional services...Ensure your android/app/src/main/AndroidManifest.xml includes:
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />Debug Mode
flutter runRelease Mode (APK)
flutter build apk --releaseRelease Mode (AAB for Play Store)
flutter build appbundle --releasedependencies:
# Core Framework
flutter_riverpod: 2.6.1 # State management
provider: ^6.1.2 # Dependency injection
# Azure AI Services
azure_speech_recognition_flutter: ^1.0.0 # Azure Speech Recognition
http: 1.5.0 # HTTP client for Azure APIs
# Audio Processing
flutter_tts: 3.8.5 # Text-to-speech synthesis
just_audio: ^0.9.40 # Advanced audio playback
audio_session: ^0.1.21 # Audio session management
avatar_glow: 2.0.2 # Microphone animation
# Data & Storage
shared_preferences: 2.5.3 # Local preferences
flutter_secure_storage: ^9.2.2 # Secure credential storage
hive: 2.2.3 # Local database
supabase_flutter: 2.9.1 # Backend integration
# System Integration
permission_handler: ^11.3.1 # Permissions management
device_info_plus: ^11.0.0 # Device information
location: ^8.0.1 # GPS services
device_calendar: 4.3.3 # Calendar integration
# UI & UX
google_fonts: 6.3.0 # Typography
url_launcher: 6.2.6 # External app launching- Speech-to-Text: Real-time voice recognition with custom phrase hints
- Text-to-Speech: Neural voice synthesis with multiple voice options
- Wake Word Detection: Continuous listening for activation phrases
- Natural Language Understanding: Advanced intent recognition
- Conversational AI: Smart responses and context management
- Content Generation: Dynamic response generation
- Multi-language Support: Real-time translation capabilities
- Language Detection: Automatic language identification
<!-- Core Voice Functionality -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<!-- Network & Cloud Services -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- Location Services -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- Calendar Integration -->
<uses-permission android:name="android.permission.READ_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<!-- Background Processing -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />- Audio Capture: Continuous microphone monitoring
- Wake Word Detection: Azure Speech-based activation
- Speech Recognition: Real-time STT with phrase hints
- Natural Language Processing: Intent extraction and command routing
- Response Generation: Dynamic response creation
- Text-to-Speech: Natural voice synthesis and playback
- Native Bridge: Kotlin-based Azure Speech SDK integration
- Platform Channels: Flutter-Android communication
- Secure Configuration: Environment-based credential management
- Fallback Systems: Graceful degradation for offline scenarios
- Riverpod: Reactive state management for voice interactions
- Audio Pipeline State: Real-time audio processing status
- User Preferences: Persistent configuration storage
- Service Health: Continuous service monitoring
HordVoice includes a comprehensive test suite with >80% coverage target, specifically designed for Azure AI services integration.
test/
โโโ unit/ # Unit tests for individual components
โ โโโ services/ # Azure AI services unit tests
โโโ integration/ # End-to-end integration tests
โ โโโ voice_pipeline_integration_test.dart
โโโ mocks/ # Mock implementations
โ โโโ azure_services_mocks.dart
โโโ README.md # Testing documentation
# Unix/Linux/macOS
./run_tests.sh
# Windows
run_tests.bat
# Manual execution
flutter test --coverage# Run all unit tests
flutter test test/unit/
# Run specific service tests
flutter test test/unit/services/azure_speech_service_test.dart
flutter test test/unit/services/azure_openai_service_test.dart
# Run with coverage
flutter test test/unit/ --coverage# Run complete voice pipeline tests
flutter test test/integration/
# Run specific integration test
flutter test test/integration/voice_pipeline_integration_test.dart# Generate coverage report
flutter test --coverage
genhtml coverage/lcov.info -o coverage/html
open coverage/html/index.html # View coverage report# Generate mocks for testing
flutter packages pub run build_runner build --delete-conflicting-outputsflutter analyze# Test Azure Speech connection
flutter run --debug -d android
# Check logs for Azure service initialization
# Test with different configurations
flutter run --dart-define=ENVIRONMENT=development
flutter run --dart-define=AZURE_SPEECH_MOCK=true- Speech Recognition Service: Initialization, recognition, error handling, stream management
- OpenAI Service: Intent analysis, response generation, emotion analysis, speech optimization
- Environment Configuration: Credential management, fallback scenarios
- Circuit Breaker: Resilience patterns, failure recovery
- Complete Voice Pipeline: Speech recognition โ Intent analysis โ Response generation โ TTS
- Error Recovery: Graceful handling of service failures
- Performance Testing: Concurrent requests, memory management
- Stream Processing: Real-time audio stream handling
- Azure Speech Responses: Realistic test scenarios
- OpenAI API Responses: Various intent types and error conditions
- Environment Configurations: Different deployment scenarios
- Error Scenarios: Network failures, authentication errors
- Overall Coverage: โฅ80% line coverage
- Azure Speech Service: โฅ85% coverage
- Azure OpenAI Service: โฅ85% coverage
- Critical Services: โฅ80% coverage
All tests run automatically on:
- ๐ Pull Request creation
- ๐ Push to main branch
- ๐ Scheduled nightly builds
- ๐ Hacktoberfest contributions
# Development environment
flutter run --dart-define=ENVIRONMENT=development
# Testing environment
flutter run --dart-define=ENVIRONMENT=test
# Production environment
flutter run --dart-define=ENVIRONMENT=productionHordRicJr
- GitHub: https://github.com/HordRicJr
- Email: [email protected]
This project is licensed under the MIT License. See the LICENSE file for details.
HordVoice is proudly participating in Hacktoberfest 2025!
We're looking for meaningful contributions that help improve our AI-powered voice assistant. Whether you're a seasoned developer or just starting out, there's a place for you in our community.
-
๐ Find an Issue
- Browse our Hacktoberfest issues
- Look for Good First Issues if you're new
- Comment on an issue to claim it
-
๐ด Fork & Clone
git clone https://github.com/YourUsername/HordVoice.git cd HordVoice -
๐ Create Your Feature
git checkout -b feature/your-amazing-feature # Make your changes git commit -m 'feat: add amazing voice feature'
-
๐ค Submit Your Contribution
git push origin feature/your-amazing-feature # Open a Pull Request using our template
| ๐ฏ Area | ๐ฐ Difficulty | ๐ Examples |
|---|---|---|
| ๐ Bug Fixes | Beginner | Voice recognition errors, UI glitches |
| โจ Features | Intermediate | New voice commands, UI improvements |
| ๐ค Azure AI | Advanced | Speech recognition, NLP enhancements |
| ๐ Documentation | Beginner | README updates, code comments |
| ๐งช Testing | Intermediate | Unit tests, integration tests |
| ๐ Localization | Beginner | Translations, cultural adaptations |
| โฟ Accessibility | Intermediate | Screen reader support, voice feedback |
| ๐ Security | Advanced | API security, data encryption |
- ๐ Official Hacktoberfest swag for 4+ quality PRs
- ๐ Recognition in our contributors list
- ๐ Special badges for outstanding contributions
- ๐ง Direct invitation to join our development team
We love contributions from the community! Here's how you can help:
- โญ Star this repository to show your support
- ๐ Read our Contributing Guidelines
- ๐ด Fork the project and create your feature branch
- ๐ป Make your changes following our coding standards
- ๐งช Test your changes thoroughly
- ๐ค Submit a Pull Request with a clear description
- Read the Contributing Guidelines
- Check existing issues and PRs
- Set up your development environment
- Test your changes on a real Android device
- Follow our Code of Conduct
HordVoice is built with โค๏ธ by the open source community. We believe in:
- ๐ Open Development: All development happens in the open
- ๐ค Inclusive Community: Everyone is welcome to contribute
- ๐ Knowledge Sharing: We document everything for future contributors
- ๐ Innovation: Pushing the boundaries of voice AI technology
- ๐ Global Impact: Making voice AI accessible worldwide
- ๐๏ธ Architecture: Clean, modular, and extensible
- ๐งช Testing: Comprehensive test coverage
- ๐ Performance: Optimized for real-time voice processing
- ๐ Security: Enterprise-grade security practices
- ๐ฑ Mobile-First: Built for Android with Flutter
Join our growing community of voice AI enthusiasts!
- ๐ฌ GitHub Discussions - Ask questions, share ideas
- ๐ Report Issues - Bug reports and feature requests
- ๐ง Email Support - Direct contact for urgent matters
- ๐ Documentation - Comprehensive guides and API docs
- ๐ Star this repository to stay updated
- ๐ Watch for notifications on new releases
- ๐ด Fork to create your own version
- ๐ข Share with your network
Your feedback matters! Help us make HordVoice better:
- โญ Rate the project on GitHub
- ๐ Write reviews and blog posts
- ๐ฆ Share on social media
- ๐ค Present at conferences and meetups
Thanks to these wonderful people who contributed to this project (emoji key):
|
ASSOUN Rodrigue ๐ป ๐จ ๐ ๐ง |
Dependabot ๐ง ๐ก๏ธ |
GitHub Copilot ๐ป ๐ค ๐ง |
Ce projet suit la spรฉcification all-contributors. Les contributions de toute nature sont les bienvenues !
- Microsoft Azure: For the powerful AI services and Speech SDK
- Flutter Team: For the incredible cross-platform framework
- Azure Cognitive Services: For advanced speech and language capabilities
- Flutter Community: For the amazing open-source packages
- Hacktoberfest: For encouraging open-source contributions
- GitHub Actions: For seamless CI/CD automation
- ๐ Hacktoberfest 2025 participation
- ๐ฑ Google Play Store release
- ๐ Multi-language support expansion
- ๐ Advanced voice customization
- ๐ค Enhanced AI personality system
- ๐ iOS support with SwiftUI
- ๐ Web app version
- ๐ Smart home integration (Google Home, Alexa)
- ๐ฅ Multi-user voice profiles
- ๐ Third-party app integrations
- ๐ Voice analytics dashboard
- ๐จ Custom wake word training
- ๐ Become the leading open-source voice assistant
- ๐ค Advanced conversational AI capabilities
- ๐ Support for 50+ languages
- ๐ Fully decentralized voice processing
- ๐ Educational platform for voice AI development
- โจ First public release with full Azure AI integration
- ๐ค Advanced Azure Speech Recognition with wake word detection
- ๐ง Azure OpenAI integration for intelligent conversation
- ๐ Premium text-to-speech with neural voices
- ๐ต Inter-app control for Spotify and calendar
- ๐ Real-time audio visualization with waveform display
- ๐ Enterprise-grade security with environment configuration
- ๐จ Modern Material Design 3 interface
- ๐ Multi-language support foundation (French + extensible)
- ๐ซ Privacy-first approach with local data storage
- ๐ค Comprehensive CI/CD with automated testing
- ๐ก๏ธ Security scanning with automated vulnerability detection
- ๐ Hacktoberfest 2025 ready with contribution guidelines
- ๐ Complete documentation and developer guides
HordVoice - Your intelligent voice companion ๐ค
Made with โค๏ธ by HordRicJr and the open source community
"Empowering voices, enabling futures"
ยฉ 2025 HordVoice Project. All rights reserved.