Skip to content

Releases: SandroMaglione/flutter-supabase-template

Package upgrades

23 Apr 15:38
0364afa
Compare
Choose a tag to compare

Upgraded dependencies and their configuration to latest version:

  • auto_route (Navigation)
  • injectable (Dependency injection)
  • fpdart (Functional programming)

What's Changed

Functional programming (`fpdart`)

04 Dec 05:10
572c38b
Compare
Choose a tag to compare

This PR refactors the code to add Functional programming with the fpdart package.

Functional programming makes error handling in the app more solid and safe. These are the main changes:

  • Updated return type in repository from Future to TaskEither
  • Added error types for each request
  • Refactored repository implementations to return TaskEither (using fpdart's methods like tryCatch, flatMap, map)
  • Execute requests and display error message based on the type of error returned (Either type)

sign_in_done

What's Changed

Supabase database

29 Nov 05:35
18740de
Compare
Choose a tag to compare

This PR introduces a complete setup for using Supabase database.

This update is built on top of the previous PR on Supabase authentication. Once the user signs in, we display a form to update first name and last name in the database:

  • getUserInformation and updateUserInformation methods inside new UserDatabaseRepository
  • Added UserModel class to store the user information (with fromJson and toJson methods)
  • Added widgets folder containing new widgets displayed inside HomePage

Note: This PR also upgrades supabase_flutter to v1.1.0, with a few breaking changes


Screenshot 2022-11-25 at 06 00 30

Screenshot 2022-11-25 at 05 57 56

What's Changed

Supabase authentication

24 Sep 03:30
df52a44
Compare
Choose a tag to compare

This PR introduces a complete setup for using Supabase auth.

This configuration works as follows:

  • Initial SplashScreen which shows a loading indicator. This is used to wait for the app to load the current authentication session and then redirect to either the sign in page (no auth) or the home page (with auth)
  • SignIn and SignUp pages to register the user and log in in the app
  • Sign out button in the home page used to sign out the user
  • Listener for authentication events which manages the navigation stack as new events are detected
  • Configuration of repository pattern to manage auth implementations

What's Changed

Dependency injection (`injectable`)

24 Sep 03:29
dbdd86e
Compare
Choose a tag to compare

Added configuration for dependency injection using injectable.

The configuration also contains an example repository to test the correct build generation.

What's Changed

Routing (`auto_route`)

24 Sep 03:27
5ab4a61
Compare
Choose a tag to compare

Added auto_route setup for app navigation.

Note: This is the basic configuration. As the app evolves, more features will be added.

What's Changed

Environment variables

24 Sep 03:23
6251749
Compare
Choose a tag to compare

Setup for environment variables using String.fromEnvironment. Adding also a launch.json file to vscode to run the app using --dart-define.

What's Changed