Skip to content

kausar033/voice-command-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Voice Command AI πŸŽ™οΈβ˜•

A premium Flutter application that demonstrates a fully hands-free voice command interface. Designed for high-end user experiences, it allows users to place orders (like coffee) using natural voice interaction, powered by a sophisticated state machine.

Version Flutter

✨ Features

  • Wake Word Detection: Activated by "Hey Bad" using Picovoice Porcupine.
  • Natural Voice Ordering: Uses Speech-to-Text (STT) for capturing complex commands.
  • Voice Feedback: Uses Text-to-Speech (TTS) for order confirmation and status updates.
  • Interactive UI: Features premium aesthetics with AvatarGlow, custom animations, and Google Fonts (Inter).
  • State Machine Architecture: Handles transitions between Idle, Listening, and Confirming states seamlessly.
  • Local Notifications: Provides visual feedback for placed orders.
  • Scalable Infrastructure: Clean Architecture with dependency injection using GetIt.

πŸš€ Getting Started

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/voice-command-ai.git
    cd voice-command-ai
  2. Install dependencies:

    flutter pub get
  3. Configure AccessKey: Open lib/core/constants/app_constants.dart and replace the picovoiceAccessKey with your own key from the Picovoice Console.

  4. Run the app:

    flutter run

πŸ› οΈ Project Structure

lib/
β”œβ”€β”€ core/
β”‚   β”œβ”€β”€ constants/       # App-wide constants & API keys
β”‚   └── services/        # Service layer (STT, TTS, WakeWord, Notifications)
β”œβ”€β”€ models/              # Data models (OrderModel)
β”œβ”€β”€ presentation/
β”‚   β”œβ”€β”€ screens/         # UI Screen layers (Home, All Orders)
β”‚   └── widgets/         # Reusable UI components
└── injection_container.dart # Dependency Injection setup

πŸ“± Release Configuration (Android)

To ensure the wake word detection works in production (Release Mode), specialized configurations are included:

  • Proguard Rules: Specific rules in android/app/proguard-rules.pro to prevent the Picovoice SDK from being stripped or obfuscated.
  • Resource Optimization: Custom aaptOptions in build.gradle.kts to ensure .ppn files (wake word models) are not compressed.
  • Shrinking Settings: isShrinkResources is disabled in release builds to protect native library dependencies.

Important

When building for release, ensure you run flutter clean before flutter build apk --release to apply the latest Proguard rules.

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“„ License

This project is licensed under the MIT License.

About

πŸŽ™οΈ Advanced Voice AI Command Center for Flutter. Modular STT/TTS integration, automated ordering logic, and high-end interactive animations for a premium voice-first experience.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors