v-modal GitHub avatar

vmodal_sdk_flutter

v-modal

VModal is a Flutter SDK that adds multimodal video search and streaming uploads to Android and iOS apps.

Stars

623

7-day growth

No data

Forks

1

Open issues

4

License

MIT

Last updated

2026-07-19

Why it is worth attention

It provides a typed, native Flutter API for semantic video search using natural language, speech, text, and imagery, with streaming uploads and full cancellation support.

Who it is for

  • Flutter mobile developers
  • Developers building video-centric applications
  • Teams seeking multimodal search in their apps
  • Developers needing controlled, app-owned credential management

Use cases

  • Search video libraries by spoken words or displayed text via ASR/OCR
  • Find visual moments in videos using natural language queries
  • Upload videos from device storage or camera with live progress and cancellation
  • Integrate multimodal search into existing Flutter apps without custom login UI

Strengths

  • Typed, small Dart API with focused resource classes (auth, searches, collections, etc.)
  • Streamed uploads that avoid loading entire files into memory
  • Per-operation cancellation tokens for reliable lifecycle management
  • App-owned runtime credentials with no imposed login screen

Considerations

  • Flutter Web is not supported in the current release
  • Multipart upload is experimental and requires explicit opt-in
  • Requires Flutter 3.44+ and Dart 3.12+, limiting compatibility with older projects

README quick start

VModal for Flutter Give your Android and iOS apps a multimodal memory. Upload video. Find moments by meaning, speech, text, or imagery.Keep the experience fast, native, and 100% Flutter.

Turn every video library into an experience your users can explore.

Build the feature people remember

VModal brings multimodal video search and mobile-friendly uploads to Dart with a small, typed API. Your app owns the interface; the SDK handles the VModal gateway, request models, responses, upload streams, progress, and cancellation.

Your Flutter experienceVModal gives you
“Find the cyclist in the red jacket”Semantic video and image search
Search words spoken or shown on screenASR and OCR search sources
Upload from a picker or camera flowStreamed, signed uploads with live progress
A cancel button that really cancelsPer-operation cancellation tokens
Collection and indexing screensTyped collection, index, usage, and image resources
Login and account switching your wayApp-owned runtime credentials—no login UI imposed

Start in minutes

The public package source is available on GitHub. Add it to your app:

dependencies:
  vmodal_sdk_flutter:
    git:
      url: https://github.com/v-modal/vmodal_sdk_flutter.git
      ref: main

Then run:

flutter pub get

Create one client from the API key already loaded by your authenticated app:

import 'package:vmodal_sdk_flutter/vmodal_sdk_flutter.dart';

final keys = MutableApiKeyProvider(runtimeApiKey);
final vmodal = VmodalClient(
  config: SdkConfig(apiKeyProvider: keys),
);

The SDK never owns your login screen or persists your API key. It receives an in-memory credential from your application at runtime.

Search video with natural language

final groups = await vmodal.collections.listGroups(mode: 'vid_file');
if (groups.data.isEmpty) {
  throw StateError('No video collection exists for this API key');
}
final group = groups.data.first;
final version = group.latestLancedbVersion;
if (version == null) {
  throw StateError('The collection has no searchable LanceDB version');
}

final results = await vmodal.searches.searchVideo(
  SearchRequest(
    queryText: 'the cyclist crossing the bridge at sunset',
    groupName: group.groupName,
    searchSources: const ['image'],
    versionLancedb: ver

Description

V- Modal AI: Search anything anywhere SDK Flutter

Related repositories

Similar projects matched by category, topics, and programming language.

xuanli199
xuanli199 GitHub avatar

duoduo

A gamified, AI-powered Flutter app that lets you create custom question decks from text, images, and shared content to learn with XP, streaks, achievements, and multiple quiz modes.

Dart
17