What problem does it solve? Flutter's sqflite plugin only works on Android, iOS, and macOS, so flutter test fails with MissingPluginException and desktop or web builds have no database at all. This Skill shows how to swap the global databaseFactory so the same database code runs in unit tests, widget tests, Linux/Windows/Dart VM, and the web. ## Core Features & Use Cases - Test database setup: Initialize sqflite_common_ffi with sqfliteFfiInit and databaseFactoryFfi for unit tests, or databaseFactoryFfiNoIsolate for widget tests, using inMemoryDatabasePath for isolated test databases. - Cross-platform factory selection: Pick databaseFactoryFfiWeb for web, databaseFactoryFfi for desktop, and the plugin default on mobile, all from one main() using kIsWeb and Platform checks. - SQL debugging and diagnostics: Log every statement with SqfliteDatabaseFactoryLogger or debugQuickLoggerWrapper, tune lock warnings, enable Android WAL, and handle iOS unprotected folders and isolate constraints. - Use Case: Write a repository class that accepts a DatabaseFactory, then test migrations by opening a file database at version 1, reopening at version 2, and asserting the schema with PRAGMA table_info. ## Quick Start Set up my Flutter unit tests to run sqflite against an in-memory database using sqflite_common_ffi and show me how to select the right database factory per platform in main().