JHubi1/ollama-app
58.0
Adequate · 19 September 2026
5.8k
lines of production code
Dart
with C++
1
measurement over time
What this system is
This system is a cross-platform client application for the Ollama API, built with Flutter and supporting Android, Windows, Linux, and web platforms. It enables users to interact with local language models through a chat interface, featuring voice input and output capabilities, customizable settings, and data export functionality. The application provides a localized user experience with support for multiple languages and includes desktop-specific window management and installation tools.
Features
Added German, Persian, Italian, Turkish, and Chinese translations
The app now supports German (de), Persian (fa), Italian (it), Turkish (tr), and Chinese (zh) in addition to English. These new language files provide localized strings for the interface, including settings, chat actions, model management dialogs, and voice mode options, allowing users to interact with the application in their preferred language.
lib/l10n · high confidence
Added experimental web support
The application now includes experimental support for running in a web browser. This change introduces the necessary entry point (index.html) and progressive web app manifest (manifest.json) to enable the app to be served as a web application, including support for installation as a PWA and handling of launch modes.
web · high confidence
Generated localization files for Ollama app
The \lib/l10n/gen\ directory now contains the generated Dart source files for internationalization, including the base \AppLocalizations\ class and language-specific implementations for English, German, Persian, Italian, Turkish, and Chinese. These files provide the translated strings for UI elements such as chat options, settings, model management dialogs, and tips, enabling the application to display content in the user's selected locale.
lib/l10n/gen · high confidence
Initial Linux desktop build support
The application now includes the necessary build configuration and native entry points to run on Linux desktop environments. This change introduces a CMake-based build system that compiles the Flutter engine with GTK+ 3, registers essential plugins (such as window management, file selection, and URL launching), and handles the native application lifecycle, enabling users to install and run the Ollama app on Linux.
linux · high confidence
Initial Windows desktop support
This change introduces the foundational build infrastructure and native runner code required to run the Ollama App on Windows. It adds the CMake build configuration, the Win32 window management layer with high-DPI and dark-mode support, and the Flutter plugin registrations (including bitsdojo\_window, dynamic\_color, file\_selector\_windows, flutter\_tts, permission\_handler\_windows, url\_launcher\_windows, and volume\_controller) that enable the application to function as a native desktop client.
windows · high confidence
Introduces voice mode, desktop support, and a welcome onboarding flow
The application now includes a new voice interaction mode (lib/screen\_voice.dart) that uses speech-to-text for input and text-to-speech for responses, gated by explicit microphone and Bluetooth permissions. Desktop-specific window management and sizing are enabled via the bitsdojo\_window library (lib/main.dart), and a new three-page onboarding experience (lib/screen\_welcome.dart) guides first-time users. The settings interface (lib/screen\_settings.dart) has been restructured to support these new capabilities, including toggles for voice and device theme usage.
lib · high confidence
New Windows installer with multi-language support and silent uninstall options
The Windows installation experience is now handled by a new Inno Setup script (ollama.iss) that supports English, German, Italian, and Turkish. The installer includes a modern wizard interface, optional desktop icon creation, and a silent uninstall process that prompts users whether to remove application settings stored in the user's AppData folder.
_windows\installer · high confidence
Behavioural changes
Android project migration and voice mode support
The Android application has been updated to support voice interaction features, requiring new permissions for audio recording and Bluetooth connectivity, and adding intent queries for speech recognition and text-to-speech services. The project package name was migrated from com.example.ollama to com.freakurl.apps, and the Gradle wrapper was upgraded from version 7.6.3 to 8.10.2. Additionally, the app now enables the system back gesture navigation and updates the launcher icon resource reference.
android · high confidence
Introduces centralized networking, desktop windowing, and haptic feedback workers
This change adds a new \lib/worker\ module that centralizes core application logic into dedicated files. It introduces a centralized HTTP client (\clients.dart\) that configures the Ollama API connection and allows custom headers, while also bypassing certificate validation for local development. A new desktop worker (\desktop.dart\) provides platform detection and renders native window controls (minimize, maximize, close) for desktop builds. The update also adds a haptic feedback worker (\haptic.dart\) to provide tactile responses for user interactions, and a theme worker (\theme.dart\) that implements predictive back transitions on Android and manages light/dark mode preferences.
lib/worker · high confidence
Modernized build and utility scripts with Dart implementation
The project has replaced the legacy Windows batch build script (build.bat) with a new Dart-based build script (build.dart) that automates the extraction of version information from pubspec.yaml, executes Flutter builds for Android APKs, and copies the resulting artifacts to a centralized output directory. Additionally, the install.bat and clean.bat scripts have been updated to correctly navigate to the project root directory before executing Flutter commands, ensuring they function correctly regardless of the current working directory.
scripts · high confidence
Project rebranding to Ollama App and addition of Apache 2.0 license
The project has been renamed from a generic 'Flutter project' to 'Ollama App', with the README updated to describe it as a client for Ollama. An Apache License 2.0 file has been added to define the usage terms. Additionally, new configuration files for Flutter DevTools and localization (l10n) have been introduced, and the internal metadata has been updated to reflect a new Flutter stable revision and the addition of Windows as a supported platform.
(repo-wide) · high confidence
Settings interface reorganized into dedicated category screens
The settings UI has been restructured from a single view into distinct, grouped screens for About, Behavior, Export, Interface, and Voice. This change introduces specific controls for each area, including an About screen with version display and update checking, a Behavior screen for system prompts and markdown settings, an Export/Import screen for chat data, an Interface screen for model preloading and request types, and a Voice screen for experimental text-to-speech features.
lib/settings · high confidence
Test coverage
Added widget tests for button and toggle components
Replaced the generic counter smoke test with specific unit tests for the application's UI components. The new tests verify that the custom button widget correctly displays text and icons, and that tapping it triggers the provided callback. Additionally, tests for the toggle widget confirm that both tapping the text label and interacting with the underlying switch control correctly update the toggle state.
test · high confidence
Dependencies
Android build migration to Kotlin DSL and Flutter 3.29 upgrade
The Android build system has been migrated from Groovy to Kotlin DSL (build.gradle.kts), updating the Android Gradle Plugin to version 8.7.0 and Kotlin to 1.8.22, while increasing the JVM memory allocation for builds. The project has also been upgraded to Flutter 3.29.0, which includes a significant expansion of dependencies such as adding support for desktop windowing (bitsdojo\_window), dynamic theming (dynamic\_color), and various UI utilities, alongside renaming the application identifier to 'ollama\_app'.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 58.
Lenses
- Code Health 65
- Architecture 100
- Maturity 57
- Readiness 47
- Security 82
- Domain Modelling 100
Changes since last survey
- 184 commits — 143 feature/other, 41 fixes
By area
- (root) — 44 commits
- lib/l10n — 22 commits
- lib/main.dart — 18 commits
- lib/settings — 18 commits
- lib/worker — 18 commits
- .github/workflows — 13 commits
- assets/screenshots — 11 commits
- fastlane/metadata — 6 commits
- lib/screen_settings.dart — 6 commits
- .github/ISSUE_TEMPLATE — 5 commits
- (repo) — 3 commits
- android/app — 3 commits
- windows_installer/ollama.iss — 3 commits
- lib/screen_voice.dart — 2 commits
- lib/worker_setter.dart — 2 commits
- scripts/build_beta.dart — 2 commits
- assets/chatsample.json — 1 commit
- assets/welcome — 1 commit
- lib/screen_welcome.dart — 1 commit
- scripts/build.bat — 1 commit
Notable commits
- fix: Action fixes
- fix: Bug fix
- fix: Bug fixes
- fix: Bug fixes, small improvements, updated marketing assets
- fix: Continuity fixes
- fix: Critical chat fix, added voice mode
- fix: Fix capability check for model details
- fix: Fixed #11
- fix: Fixed android version
- fix: Fixed changelog naming
- fix: Fixed dark mode markup
- fix: Fixed description of translation
- fix: Fixed desktop switch thumb color
- fix: Fixed dropdown
- fix: Fixed html import
- fix: Fixed icons
- fix: Fixed image size
- fix: Fixed localization key
- fix: Fixed model add dialog
- fix: Fixed multimodal
- …and 164 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
JHubi1/ollama-app was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 19 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 3759d32049771096b172b99400edae6d4f1a2557 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-13a154b7f5d1.