À propos du projet

SQLite Loom est une couche SQLite réactive construite sur sqflite_common pour les applications Dart et Flutter. Elle fournit une interface typée pour les opérations de base de données sans avoir besoin de génération de code, d'annotations ou de build runners. Les capacités clés incluent : - Tables et requêtes typées : Prend en charge des valeurs typées pour les colonnes et des requêtes immuables pour composer les filtres, le tri et la pagination. - Lectures réactives : Fournit des flux en direct pour surveiller les listes, les comptages et l'existence des données, avec des invalidations sensibles aux transactions. - Écritures sécurisées : Implémente des écritures protégées où les mises à jour et suppressions non filtrées échouent, sauf demande explicite via allRows(). - Migrations explicites : Inclut un système de migration pouvant être géré via un CLI fourni ou programmatiquement au démarrage. - Gestion des relations : Prend en charge des descripteurs explicites pour les relations un-à-un, un-à-plusieurs et plusieurs-à-un, incluant le chargement par lots pour éviter les modèles de requête N+1. - Support SQLite avancé : S'intègre aux fonctionnalités de SQLite telles que le mode WAL, les clés étrangères, les clauses RETURNING et les tables strictes. - Diagnostics : Inclut un DbObserver pour surveiller la durée des requêtes et le nombre de résultats, ainsi que des outils pour les vérifications d'intégrité et le vacuuming.