v-modal/vmodal_sdk_flutter
60.5
Adequate · 19 September 2026
12.8k
lines of production code
Dart
primary language
1
measurement over time
What this system is
This system is the VModal Flutter SDK, a Dart client library designed to integrate video search and indexing capabilities into mobile applications. It provides core functionality for managing user collections, uploading video content with adaptive multipart streaming, and performing searches via text, images, or absolute time ranges. The repository also includes multiple example applications and tooling to demonstrate these workflows and validate the SDK's integration with the upstream VModal service.
Features
Add Framebase video search example
Introduces the Framebase Flutter example, a product-style demo for searching a small travel-video library using natural-language queries or reference photos. The example demonstrates the complete mobile flow, including runtime authentication, metadata-aware streamed uploads, asynchronous indexing, trip-scoped grouped results, and playback of the local source video at the returned timestamp. It includes bundled city-street footage and comprehensive documentation on media provenance and usage.
_example/05\framebase · high confidence
Add Sightline Flutter example app with integration tests
The example/04\_example directory now contains a complete Flutter application named Sightline, demonstrating the VModal Flutter SDK with two search modes: video archive search and traffic camera search. The project includes full Android and iOS platform configurations, analysis options, and a comprehensive suite of integration tests that drive the app's UI workflows, including API key setup, media upload, indexing, text-based search, and image-based search.
_example/04\example · high confidence
Initial release of the VModal Flutter SDK with comprehensive tooling and examples
The VModal Flutter SDK (v1.2.2) is now available, providing a public-facing Dart package for interacting with the VModal platform. This release includes the core SDK library, four example applications (full app, users, CCTV, and Sightline), and a complete build/test/release infrastructure. Key capabilities include bounded streamed responses, cancelable signed uploads, ordered asynchronous batch search, and CCTV-specific features like caller-selected filenames, metadata text, and absolute-time search. The SDK enforces strict linting, includes security scanning via gitleaks, and supports publishing to pub.dev using GitHub Actions OIDC for non-interactive authentication.
(repo-wide) · high confidence
Initial release of the Vmodal Dart SDK
This change introduces the Vmodal Dart SDK (version 1.2.2), providing a complete client library for interacting with the Vmodal service. The SDK includes a central \VmodalClient\ for managing configuration, authentication, and resource access (search, collections, indexes, admin, and images), along with support for adaptive multipart video uploads, rotating API key providers, and a structured error hierarchy.
lib/src · high confidence
New Flutter SDK example for timestamped CCTV upload and absolute-time search
Added a new compile-checked example in \example/03\_cctv\ that demonstrates the Flutter SDK's CCTV input contract. This example walks through the progressive flow of authenticating, listing project collections and index jobs, uploading timestamped CCTV footage with specific metadata, creating and waiting for a frame index, and finally searching metadata within an absolute time range. It includes the \CctvUploadInput\ and \CctvSearchInput\ helper classes to map user-provided timestamps and metadata to the SDK's upload and search options, along with corresponding unit tests to verify that input fields are correctly mapped and that caller-provided lists are not mutated.
_example/03\cctv · high confidence
New Flutter example apps for Android setup and user-scoped content organization
This change introduces two new example applications. The \example/01\_full\_app/android\ directory now includes the standard Android project structure (manifests, MainActivity, and launch themes) required to run the Flutter application on Android devices. The \example/02\_users\ directory adds a new set of compile-checked Flutter examples demonstrating four distinct patterns for organizing searchable content: a shared global search index, a private index per application user, multiple streams for a single user (camera, favorites, uploads), and a business-domain product catalog. These examples include the necessary Dart classes, session management, and tests to validate the user-to-collection mapping logic.
_example/01\_full\_app/android, example/02\users · high confidence
New tooling for release validation, live integration testing, and performance benchmarking
The tool directory now includes several new scripts to support the SDK lifecycle. \check\_route\_sync.dart\ validates that the Flutter route contract matches the upstream Python API definitions. \release\_manifest.dart\ handles release metadata checks, source exports, and SHA-256 manifest generation. \live\_test.dart\ and \live\_cctv\_test.dart\ provide end-to-end integration tests for authentication, video upload, indexing, and search capabilities. Additionally, \perf\_benchmark.dart\ measures upload performance metrics, and \flutter\_checksums.txt\ pins the Flutter SDK version 3.44.6 for reproducible builds.
tool · high confidence
VModal Flutter example app added
A new complete example application (\example/01\_full\_app\) is provided to demonstrate the VModal SDK workflow on Android and iOS. The app guides users through authentication, collection listing, video upload, index creation, and search, displaying results in a responsive image grid. It uses the \VmodalClient\ API for now, with search candidates filtered to \vid\_file\ modes and image results loaded via the image bytes API. The example includes full platform scaffolding (Android/Gradle 9.1.0, iOS/Xcode 15.10) and widget tests to validate the progressive UI flow.
_example/01\_full\app · high confidence
Test coverage
Added comprehensive test suite for the Flutter SDK
Added a new set of unit and contract tests in the \test/\ directory to verify the behavior of the \vmodal\_sdk\_flutter\ package. These tests cover adaptive upload policy selection, HTTP transport and authentication logic (including key rotation and retry behavior), CCTV-specific upload validation and signed finalize flows, multipart upload orchestration, and the new \VModal\ facade API surface. The suite also includes infrastructure tests for route contract consistency, documentation generation, error redaction, and regression manifest verification.
test · high confidence
Dependencies
Updated example apps to Flutter 3.44 and Android Gradle Plugin 9.0.1
The example applications (01\_full\_app, 02\_users, 03\_cctv, 04\_example, 05\_framebase) have been updated to target Flutter 3.44 and use the Android Gradle Plugin 9.0.1 with Kotlin 2.3.20. This migration includes new Gradle configuration files (build.gradle.kts, settings.gradle.kts) and updated pubspec.yaml files to reflect the new SDK and plugin versions, ensuring compatibility with the latest Flutter tooling.
(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 60.
Lenses
- Code Health 95
- Architecture 95
- Maturity 56
- Readiness 67
- Security 50
- Domain Modelling 100
Changes since last survey
- 59 commits — 56 feature/other, 3 fixes
By area
- (root) — 41 commits
- (repo) — 4 commits
- lib/src — 4 commits
- example/01_full_app — 3 commits
- example/05_framebase — 3 commits
- example/04_example — 2 commits
- example/03_cctv — 1 commit
- example/ios — 1 commit
Notable commits
- fix: Merge pull request #17 from balalawitch/fix/example-search-candidates-and-image-loading
- fix: fix(example): load result frames via image bytes API instead of NetworkImage
- fix: fix(example): use vid_img modality and non-empty filename in search candidates
- change: Add Framebase video search example
- change: Change image link for video search in README
- change: Document Framebase interface screenshots
- change: Enhance Framebase with travel video search
- change: Initial commit
- change: Insert tracking pixel in README
- change: Merge pull request #18 from brpetrov/docs/search-scoring
- change: Merge pull request #19 from podyriako/agent/add-framebase-example
- change: Merge pull request #20 from podyriako/agent/framebase-travel-search
- change: Release Flutter SDK from 03a9ce8fcf3c19a44e4fcfcf35c8b07320682c14
- change: Release Flutter SDK from 0507ac2e38b2802511ea601770cc94e274f6d019
- change: Release Flutter SDK from 1cb372a1ee813dd506bb251159be8a0bc989f810
- change: Release Flutter SDK from 27ce7d0580e7c09839649cd256a2f8a74458531e
- change: Release Flutter SDK from 29cc6d52fe76510c69f865a8bafc4b0c541991ed
- change: Release Flutter SDK from 368afc8bf10f9dacbeafba8951301618b2a97bc5
- change: Release Flutter SDK from 386d9c2f95c658c383ff957bf88baa09613c813e
- change: Release Flutter SDK from 3f33bf4f235c7e8ff9c244aad2de851179fa9bcc
- …and 39 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
v-modal/vmodal_sdk_flutter 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 38bf7e2824775c59949f0bd118777772ad8d2d7d — 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.