Gidar AI is an open-source Flutter AI chat app and AI workspace built for Android, desktop, and cross-platform workflows. It combines multi-provider LLM access, streaming chat, local history, code preview, HTML preview, export tools, and provider-aware settings in one place.
Gidar AI supports OpenRouter, Groq, Gemini, Cerebras, Z.ai, Mistral, SambaNova, and custom OpenAI-compatible APIs, making it useful for users searching for a Flutter AI assistant app, multi-provider AI chat app, or OpenAI-compatible chat client.
Download APK: GidarAI v1.0.0 release
Repository: github.com/kasifdevloper/GidarAI
Gidar AI is designed for users who want one place to chat with AI models, switch providers, compare responses, test prompts, preview generated code or HTML, and keep local conversation history. The app includes a polished settings flow, attachment handling, model management, and export utilities so users can work with different AI backends without juggling multiple apps.
- Multi-provider AI routing with support for OpenRouter, Groq, Gemini, Cerebras, Z.ai, Mistral, SambaNova, and custom OpenAI-compatible providers
- Streaming chat responses with persistent local chat history
- Model picker, provider health checks, and saved provider settings
- Attachment support for images and files
- HTML preview and code sandbox utilities
- PDF export and share flow for chat sessions
- Theme, font, density, and chat appearance customization
- Feedback controls, toast notifications, and mobile-friendly workspace UI
- Flutter and Dart
- Riverpod
- GoRouter
- Drift with SQLite
- SharedPreferences and Flutter Secure Storage
httpfor provider requestsflutter_markdown,flutter_widget_from_html, andwebview_flutterprintingandpdf
lib/src/presentation/UI screens, workspace flows, and reusable componentslib/src/domain/application use caseslib/src/data/repositories, local storage, and remote data sourceslib/src/core/app models, controller, providers, services, and themeassets/fonts, logos, and animation assetsassets/screenshots/app screenshots and promo samplestest/widget, repository, and integration-oriented tests
Story 1 |
Story 2 |
Story 3 |
Story 4 |
Story 5 |
Story 6 |
Story 7 |
Story 8 |
Story 9 |
Story 10 |
- Install Flutter stable and the Android SDK.
- Run
flutter pub get. - Start the app with
flutter run -d chromeorflutter run -d <deviceId>. - Open
Settingsinside the app. - Add one or more provider API keys and choose a model.
The Android app currently requests:
INTERNETREAD_EXTERNAL_STORAGEfor Android 12 and belowREAD_MEDIA_IMAGESfor Android 13+CAMERAWRITE_EXTERNAL_STORAGEfor Android 9 and below
This project is released under the Apache License 2.0. You can use, modify, fork, and redistribute it, including in modified versions, as long as you follow the license terms.
Important attribution note:
- Keep the
LICENSEfile - Keep the
NOTICEfile - Keep existing copyright and attribution notices
- Clearly mark files you modify when redistributing changes
Project credit:
- Original creator: Kasif
- Feedback and bug reports:
kasifdevloper@gmail.com
For feedback, bug reports, support requests, or collaboration, email:
kasifdevloper@gmail.com
If you publish a modified version, it is a good idea to document your changes clearly so users can understand what differs from the original project.
- Attachment handling is still evolving and not all providers are using full multimodal request payloads yet
- PDF attachment parsing is not complete
- Export formatting is functional but still not final-production polish
- Some advanced markdown and math rendering cases may still need refinement
flutter pub getflutter analyzeflutter testflutter run -d chrome