analyzer
This package provides a library that performs static analysis of Dart code.
FlutterVoiceFriend is an open-source Flutter application designed to help developers build interactive, voice-driven chatbot experiences using a combination of cutting-edge speech-to-text (STT) and text-to-speech (TTS) technologies.
This package provides a library that performs static analysis of Dart code.
Extremely fast, easy to use, and fully async NoSQL database for Flutter.
Code generator for the Isar Database. Finds classes annotated with @Collection.
Build powerful LLM-based Dart and Flutter applications with LangChain.dart.
LangChain.dart integration module for OpenAI (GPT-5, o3, Embeddings, DALL·E, etc.).
A Flutter plugin that exposes device specific speech to text recognition capability.
A low-level audio plugin for Flutter, mainly meant for games and immersive apps. Based on the SoLoud (C++) audio engine.
Audio recorder from microphone to file or stream with multiple codecs, bit rate and sampling rate options.
Utilities for working with Foreign Function Interface (FFI) code.
v1.3.0Loading animation or loading spiner or loader. It's used to show loading animation when the app is in loading state or something is processing for uncertain time.
Easily restart your application from scratch, losing any previous state
A pure Dart package to check your internet connection with subsecond response times, even on mobile networks!
^6.7.0^2.2.2^2.0.0{"sdk":"flutter"}^5.1.0^1.1.12.0.2^6.2.1^1.2.2^2.5.2^0.19.0{"version":"3.1.8","hosted":"https://pub.isar-community.dev/"}{"version":"3.1.8","hosted":"https://pub.isar-community.dev/"}^0.9.40^0.7.3^0.7.1^1.2.1^3.1.2^5.4.4^1.9.0^2.1.3^11.3.1^6.1.2^5.1.2^2.3.1^7.0.0^4.5.0^1.2.7^3.0.0^2.4.12^1.0.6^0.13.1^3.0.0{"sdk":"flutter"}{"version":"3.1.8","hosted":"https://pub.isar-community.dev/"}English project snapshot. Visit GitHub for the latest content.
FlutterVoiceFriend is an open-source Flutter application designed to help developers build interactive, voice-driven chatbot experiences using a combination of cutting-edge speech-to-text (STT) and text-to-speech (TTS) technologies. The app leverages Langchain, OpenAI for natural language processing and TTS, as well as both on-device and cloud-based speech recognition (including Deepgram) to offer flexible voice interaction capabilities.
Whether you’re developing a virtual assistant, a conversational AI tool, or an educational voice companion, FlutterVoiceFriend provides a solid foundation for building customizable, voice-based applications.
Voice-to-Voice Chatbot:
Multiple Speech Recognition Options:
Flexible and Modular:
Built with Flutter:
Natural Language Processing with Langchain & OpenAI:
Customizable Voice Responses:
Speech-to-Text Flexibility:
"FlutterVoiceFriend" was initially developed for an interactive and engaging app designed to help children explore their emotions and cultivate mindfulness through guided meditation and self-reflection exercises. The Friend in Me guides kids through various activities that are both meditative and reflective in nature. The goal is to teach children self-compassion, mindfulness, and emotional awareness through fun, simple, and engaging exercises.
speech_to_text and deepgram_speech_to_text).As of the current version, there are several features and enhancements that are planned but not yet implemented. Please take note of the following limitations:
Clone the repository:
git clone https://github.com/jbpassot/flutter_voice_friend.git
cd flutter_voice_friend
Install dependencies:
flutter pub get
Generate Isar code:
dart run build_runner build
Add API Keys:
.env.example to .env..env file.Run the app:
flutter run
Configure Settings:
Enjoy!
The app uses various external services like OpenAI for text generation and Deepgram for speech-to-text. Make sure to configure these in the .env file.
OPENAI_API_KEY=your_openai_api_key
DEEPGRAM_API_KEY=your_deepgram_api_key
For a quick start guide on creating a new activity, please see the SIMPLE_TUTORIAL.md file.
We welcome contributions! Please check the CONTRIBUTING.md file for guidelines on how to contribute.
This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. See the LICENSE file for details.
If you have any questions or feedback, feel free to open an issue or contact us at [jbpassot+fluttervoice@gmail.com].