drift_devtools 0.0.17
drift_devtools: ^0.0.17 copied to clipboard
A Flutter package that provides a visual interface for inspecting and debugging Drift databases in real-time.
Drift DevTools (Flutter) #
Uma biblioteca utilitária para facilitar a inspeção e depuração de bancos
de dados Drift (SQLite) em desenvolvimento. Fornece um exemplo simples que
gera um arquivo .sqlite com dados de amostra e integra-se bem com a
extensão VS Code "Drift Studio" para visualização em tempo real.

Principais recursos
- Exemplo mínimo de
AppDatabasecom tabelasUsers,BookseLoans. - Script de seed para popular um banco SQLite de exemplo.
- Arquivos gerados (
*.g.dart) viabuild_runnerjá incluídos emlib/. - Exemplo Flutter em
example/que abre a DB e mostra os registros em abas. - Compatível com a extensão VS Code Drift Studio para inspecionar o arquivo
.sqlitegerado.
Extensão recomendada: use a extensão do VS Code Drift Studio para uma visualização completa e interação com os arquivos gerados:
https://marketplace.visualstudio.com/items?itemName=ErickTarzia.drift-studio
Quick start #
Requisitos:
- Flutter SDK (para rodar o exemplo UI)
- Dart SDK (para executar o exemplo de console)
Gerar e executar o exemplo (Flutter):
cd drift_devtools/example
flutter pub get
flutter run
Executar apenas o script Dart que cria o banco (sem UI Flutter):
cd drift_devtools
dart pub get
dart run lib/flutter_drift_example.dart
Ao rodar o exemplo você verá que o arquivo drift_devtools_example.sqlite
é criado no diretório de trabalho. Abra a extensão Drift Studio no VS Code
e aponte para esse arquivo (ou use o comando da extensão para conectar),
ou simplesmente arraste/abra o arquivo no visualizador.
Uso no desenvolvimento #
Se você modificar as tabelas dentro de lib/flutter_drift_example.dart, gere os
arquivos com:
dart pub get
dart run build_runner build --delete-conflicting-outputs
Os arquivos *.g.dart serão gerados ao lado dos arquivos anotados (ex.:
lib/flutter_drift_example.g.dart). O exemplo do example/ já depende do
pacote via path: .. para facilitar execução local.
How to use / Como usar #
English
- Create or seed the example database (the package example does this):
cd drift_devtools
dart pub get
dart run lib/flutter_drift_example.dart
- The example prints the DB path; you can also programmatically send the generated file to the Drift DevTools (used by the extension) from your app code. Example snippet:
final dbFolder = await getApplicationDocumentsDirectory();
final file = File(p.join(dbFolder.path, 'drift_devtools_example.sqlite'));
if (await file.exists()) {
// send the path to the devtools extension (if available)
await sendDbFileToDevTools(file.path);
}
Português
- Gere ou popule o banco de exemplo (o exemplo do pacote faz isso):
cd drift_devtools
dart pub get
dart run lib/flutter_drift_example.dart
- O exemplo imprime o caminho do DB; você também pode enviar o arquivo gerado para o Drift DevTools diretamente do seu app. Trecho de exemplo:
final dbFolder = await getApplicationDocumentsDirectory();
final file = File(p.join(dbFolder.path, 'drift_devtools_example.sqlite'));
if (await file.exists()) {
// envia o caminho para a extensão Drift DevTools (se disponível)
await sendDbFileToDevTools(file.path);
}
Exemplo rápido (snippet) #
final db = AppDatabase();
await db.seed(); // popula com dados de exemplo
final users = await db.allUsers();
print(users);
await db.close();
Contribuições #
Contribuições são bem-vindas. Abra issues ou PRs com pequenos passos
reproduzíveis. Para extensões e integração com a extensão VS Code, veja o
repositório principal drift-studio.
Licença #
Veja o arquivo LICENSE na raiz do repositório.