/supabase-flutter

Flutter integration for Supabase. This package makes it simple for developers to build secure and scalable products.

Primary LanguageDartMIT LicenseMIT

Supabase

Supabase Flutter

Flutter Client library for Supabase.

Run locally

This repo is a monorepo powered by Melos containing supabase_flutter and its sub-libraries. All packages are located in the packages directory.

To install on a locally developed app:

  • Clone this repo
  • Install Melos globally if you haven't already: dart pub global activate melos
  • Run melos bootstrap or melos bs at the root of the cloned directory to install dependencies
  • Add the target package to your pubspec.yaml file specifying the path.
    supabase_flutter:
      path: <your-path-to-the-local-supabase-flutter-repo>/packages/supabase_flutter

Testing

The tests for the packages postgrest, gotrue and storage_client need some Supabase services running. To run these tests locally, you need to have the docker cli with docker-compose installed.

The needed configuration for starting the services are in the infra directory.

To start the services change working directory to infa/<package> and run the following command:

docker compose up -d

Run the Dart tests within the package directory in packages/<package> with the following command: The -j 1 flag runs the tests not concurrently, which works better since the tests are running against the same services.

dart test -j 1

To stop the services run the following command in the infra/<package> directory:

docker compose down

Contributing

  • Fork the repo on GitHub
  • Clone the project to your own machine
  • Commit changes to your own branch
  • Push your work back up to your fork
  • Submit a Pull request so that we can review your changes and merge

License

This repo is licenced under MIT.

Resources