Examples

Example apps using drift

For a full example of a cross-platform Flutter app using drift following best practices, see app example in drift's repository. For interested users wanting to take a look at how to use drift in a Flutter app with a modern architecture, this is perhaps the best example to use as a starting point.

Drift's repository also contains a number of smaller examples showcasing select drift features:

  • The encryption example contains a simple Flutter app using an encrypted drift database, powered by the sqlcipher_flutter_libs package.
  • web_worker and flutter_web_worker are small web-only apps using drift in a shared web worker, which allows for a real-time synchronization of the database across tabs. Of course, this pattern can only be embedded into multi-platform apps.
  • The migration example makes use of advanced schema migrations and shows how to test migrations between different database schemas by using drift's dedicated tooling for this purpose.
  • Another example shows how to use drift-generated code in other builders (here, built_value).

Additional examples from our awesome community are available as well:

If you too have an open-source application using drift, feel free to reach out and have it added to this list!

If you are interested in seeing more drift examples, or want to contribute more examples yourself, don't hesitate to open an issue either. Providing more up-to-date examples would be a much appreciated contribution!

Additional patterns are also shown and explained on this website:


Importing and exporting databases

Using drift with an existing database

Many to many relationships

An example that models a shopping cart system with drift.