DEV Community

Enzo Conty
Enzo Conty

Posted on

2 2

Flutter Stacked X Appwrite authentication

Overview of My Submission

Hello đź‘‹
First time experimenting with AppWrite, and I'm really happy to find some great concurrent to my usual BackOffice.

I didn't had a lot of time, and even less ideas, so I created a little application Android/iOS with Flutter a Google UI framework created in 2017. It uses the Google back-end language Dart created in 2011.

The application is based on a MVVM architecture using Stacked by FilledStacks as a state management. The usage of Stacked is for maintainability and readability. Stacked uses implicitly the Provider package.

As previously said, MoodyDiary is relying on the Stacked package. The main idea is to use an MVVM pattern to remove any business logic from the UI layouts by putting this logic in a separated view model. This adds more clarity and maintainability.

We can decompose the project into 4 layers: the Models, The Views, and finally the ViewModels.

current architecture

In the project, the views are for display only.
They can trigger interactions through Buttons/GestureDetector/Events that will call ViewModel methods.

The ViewModel data-bind all the data from the services and models and create getters for the view and notify the view of any changes (using a ReactiveServiceMixin or a NotifyListeners)

Submission Category:

Mobile Moguls

Link to Code

GitHub logo BLKKKBVSIK / moody_diary

A basic auth using Flutter with Stacked state management and Appwrite.io as BackOffice

Summary

MoodyDiary

The project is made with Flutter a Google UI framework created in 2017 It uses the Google back-end language Dart created in 2011, Dart

The application is based on a MVVM architecture using Stacked by FilledStacks as a state management. The usage of Stacked is for maintainability and readability. Stacked uses implicitly the Provider package.

Current architecture

As previously said, MoodyDiary is relying on the Stacked package. The main idea is to use an MVVM pattern to remove any business logic from the UI layouts by putting this logic in a separated view model. This adds more clarity and maintainability.

We can decompose the project into 4 layers: the Models, The Views, and finally the ViewModels.

In the project, the views are for display only.
They can trigger interactions through Buttons/GestureDetector/Events that will call ViewModel methods.

The ViewModel class can extend different types…

Additional Resources / Info

LoginScreen
RegisterScreen
Logged/Homepage

Sentry mobile image

App store rankings love fast apps - mobile vitals can help you get there

Slow startup times, UI hangs, and frozen frames frustrate users—but they’re also fixable. Mobile Vitals help you measure and understand these performance issues so you can optimize your app’s speed and responsiveness. Learn how to use them to reduce friction and improve user experience.

Read full post →

Top comments (0)

Sentry growth stunted Image

If you are wasting time trying to track down the cause of a crash, it’s time for a better solution. Get your crash rates to zero (or close to zero as possible) with less time and effort.

Try Sentry for more visibility into crashes, better workflow tools, and customizable alerts and reporting.

Switch Tools

đź‘‹ Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay