Skip to content

FHome was conceived as a platform for home baking, with the ability to post your products and buy someone else's, as well as to connect baking vendors.

License

Notifications You must be signed in to change notification settings

MorgueMorg/Flutter-FHome-Inai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FHome

FHome was conceived as a platform for home baking, with the ability to post your products and buy someone else's, as well as to connect baking vendors. It is essentially the equivalent of a mobile e-commerce app. It is still in development.

Preview

Splash/SignIn/Errors Screens

screen1 screen2 screen3

LoginSuccess/ForgotPassword/SignUp Screens

screen1 screen2 screen3

EmailOTP/Home/Search Screens

screen1 screen2 screen3

ProductDetails/Categories/Favorites Screens

screen1 screen2 screen3

Cart/Notifications/Profile Screens

screen1 screen2 screen3

Libraries

  1. Uses bloc as state management (to be exact, cubit)
  2. Uses dio/http for work with network (Originally I was going to use only dio, but in one of the api from the backend I get form-data, which dio doesn't support, so I had to use http as well)
  3. Uses get_it for dependency injection
  4. Uses equatable for value/states equality
  5. Usersflutter_svg for work with svg

Description

The application is written in dart(flutter), the backend is written in java(spring), using the rest api. In the future I plan to add interaction with firebase, a local database hive/sqlite and improve navigation (possibly add go_router). At the moment, the app has a pretty clear UX/UI design and imitation of some features that are not on the backend (search, shopping cart, etc.). It is possible to register, authorize and confirm the password by mail. Different api from the backend are used for products, categories and parts. Postgres is used as the database on the backend. There is swagger documentation which was used to interact with rest api - https://fhome.onrender.com/swagger-ui/index.html#/. I tried to do maximum validation and error handling, but there's still a lot to do. The application is kind of like an MVVM pattern, where bloc plays the role of ViewModel.

How to use

Foreword

First, you have to "wake up" the backend and the swagger documentation. Meaning you just have to open the swagger documentation and the backend will come up on its own in 2-4 minutes, after which the application will be fully operational. This is due to the fact that the backend is deployed on free hosting.

  1. Clone the repo

    git@github.com:MorgueMorg/Flutter-FHome-Inai.git

    or

    https://github.com/MorgueMorg/Flutter-FHome-Inai.git
  2. Install all the packages by typing

    flutter pub get
  3. Run the App

    flutter run
  4. If you don't want to register, you can use a test account to log in:

email: atai.tofik@gmail.com
password: dastantimakirill

Features

  • Splash
  • Login
  • Registration
  • Mail Confirmation
  • Home
  • Routing
  • Dio / http
  • Provider
  • Validation
  • User Notifications
  • Mail Confirmation
  • Work with Rest Api

Conclusion

I will be happy to answer any questions that you may have on this application. I haven't yet seen a flutter-themed baking app that interacts with the api, so hopefully this will help someone. :shipit:

About

FHome was conceived as a platform for home baking, with the ability to post your products and buy someone else's, as well as to connect baking vendors.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages