A basic boilerplate template for starting a Flutter GetX project. GetX, Dio, MVVM, get CLI, Localization, Pagination etc are implemented.

Overview

Flutter GetX Template (GetX, Dio, MVVM)

This Flutter Template using GetX package for State management, routing and Dependency Injection (bindings). We are using MVVM (Model View ViewModel) architectural pattern here. For network call we are using Dio package. We followed the recommended folder structure of GetX and used Get CLI command line tool for creating the folder structure.

Architecture of this project: MVVM

MVVM (Model View ViewModel) is one of the most popular architectural pattern for Android App development. Basically this pattern separates User interface from business-logic and data-logic. So that it's divided into three layers: Model layer, View layer and View model layer. Let's explore it more deeply.

mvvm

ViewModel: At first let's talk about ViewModel. Actually view model is a controller where we implement our business logics. It receives the data from the model and process the data according to business logic and pushed into the live data observers which is observing by view.

View: View is the collections of widgets like Text, Image, Dropdown etc. Which will be displayed to the users. Even it controls the user input. When it needs any data it command the view model (In this project it's controller) for data and observe the response. Till then it may display a loader to the user.

Model: Model is basically backend logic. It controls the data source.

To configure and run this project check here

You will find at above link step by step instructions with screenshots.

How to update app information and continue development for your own project?

  1. Rename root folder name
  2. Update project name and description from pubspec.yaml.
  3. Update app launcher name and icon. Reference
  4. Update your app's package name by running this command:

flutter pub run change_app_package_name:main your_package_name

How was this project developed?

  • Run get cli command to create project in the required directory: get create project
  • Create main_view by running this command: get create page:main and so on...
Comments
  • Issues Related flutter_localizations in template

    Issues Related flutter_localizations in template

    1. I ran pub get many times but the issue in files due to localizations remains

    issues

    2. Instead of all localizations i tried to run the main_dev but it could not make the app running gradle assembledebug infinitely

    issue2

    F:\Github Apps\flutter_getx_template>flutter doctor
    Doctor summary (to see all details, run flutter doctor -v):
    [√] Flutter (Channel stable, 2.8.1, on Microsoft Windows [Version 10.0.22000.434], locale en-US)
    [√] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    [√] Chrome - develop for the web
    [√] Android Studio (version 2021.1)
    [√] VS Code (version 1.63.2)
    [√] Connected device (3 available)
    
    • No issues found!
    
    opened by Lakhankumawat 3
  • add theme change functionality on settings page

    add theme change functionality on settings page

    Why? (ticket link or issue description)

    #11 theme changing functionality was implemented

    What was done and how?

    Theme change was done using Getx controller and SharedPreferences.

    Anything special? (optional)

    opened by AliAkberAakash 2
  • Update readme file

    Update readme file

    Why? (ticket link or issue description)

    Give an instruction to run the project by command link

    What was done and how?

    Dev: flutter run --flavor dev lib/main_dev.dart Prod: flutter run --flavor dev lib/main_prod.dart

    Anything special? (optional)

    opened by kazimdsaidul 1
  • Tawhidul development

    Tawhidul development

    Why? (ticket link or issue description)

    #19

    What was done and how?

    • Settings page modification

    • Theme item added in Settings page

    • Language item added in Settings page

    Anything special? (optional)

    Just UI design ready and click event handled from background. Not showing any dialog or other visual interaction.

    opened by tawhidularefindcc 1
  • Xcode configuration for flavor/Scheme

    Xcode configuration for flavor/Scheme

    • [x] In this project we have used flavor configuration for Android. In gradle file there are dev and prod flavor available. We have to configure XCode to support different development environment flavor like Android.

    • [x] #14

    enhancement 
    opened by hasancse91 1
  • Update gitignore and Fix typo for EnvConfig in main_prod.dart file

    Update gitignore and Fix typo for EnvConfig in main_prod.dart file

    Added Flutter Version Management related entries in the .gitignore file in case a programmer decides to write code for this repo while having multiple flutter versions in his/her system.

    And changed a variable name in main_prod.dart which may be was copied from main_dev.dart. The new variable name is more suited to the prod main file as my judgment.

    opened by kmmuntasir 1
  • Firebase dependencies removed from master

    Firebase dependencies removed from master

    Why? (ticket link or issue description)

    To make it easy to run first time when someone clone the repo.

    What was done and how?

    Removed firebase related dependencies.

    Anything special? (optional)

    opened by shafayathossain 0
  • Settings view

    Settings view

    Why? (ticket link or issue description)

    #19

    What was done and how?

    • Settings page modification

    • Theme item added in Settings page

    • Language item added in Settings page

    Anything special? (optional)

    Just UI design ready and click event handled with flutter toast.

    opened by tawhidularefindcc 0
  • Settings page UI design

    Settings page UI design

    Why? (ticket link or issue description)

    https://github.com/hasancse91/flutter_getx_template/issues/19

    What was done and how?

    • Settings page modification
    • Theme item added in Settings page
    • Language item added in Settings page

    Anything special? (optional)

    Just UI design ready and click event handled from background. Not showing any dialog or other visual interaction.

    opened by tawhidularefindcc 0
  • Firebase integration

    Firebase integration

    Why? (ticket link or issue description)

    Firebase integration.

    What was done and how?

    Integrated firebase. Added hot reload support for iOS.

    Anything special? (optional)

    opened by shafayathossain 0
  • Release build configuration related changes done for android project.

    Release build configuration related changes done for android project.

    Why? (ticket link or issue description)

    Faced some issue to make release build for android.

    What was done and how?

    Made related changes to make release build for android. Additionally readme updated and app icon changed.

    Anything special? (optional)

    opened by shafayathossain 0
  • Multi language support implemented, alert dialogue implemented

    Multi language support implemented, alert dialogue implemented

    Why? (ticket link or issue description)

    https://github.com/hasancse91/flutter_getx_template/issues/17

    What was done and how?

    Integrated multi language support using GetX Updated Settings UI Implemented Alert box for language change Updated localizations

    Anything special? (optional)

    opened by AzfarInan 4
  • Language settings should be integrated (English and Bengali Language)

    Language settings should be integrated (English and Bengali Language)

    In Settings page, there is an option to set Language. We need to show a pop-up dialog and show a Radio group with these 3 items:

    1. English
    2. Bengali And 2 buttons: Cancel, OK.

    If user select English and hit OK button, we have to store this data in our preference and set Locale('en'). In the same way it should work for Bengali. The default Locale is English.

    enhancement 
    opened by hasancse91 0
  • Light and dark theme switching option should be in Settings page

    Light and dark theme switching option should be in Settings page

    There is an option in settings page to set theme. Show a pop-up dialog to show these 3 options:

    1. Light
    2. Dark
    3. System Default

    Two buttons: Cancel, OK.

    This theme information should be stored in preference.

    enhancement 
    opened by hasancse91 1
  • Integrate Local database (SQLite) for offline support

    Integrate Local database (SQLite) for offline support

    • [ ] Use floor package
    • [ ] Store all API response in local DB (Inside remote data source, we have to call local data source to store the data)
    • [ ] When controller call to repository for data, repository will check it first at local data source. If available simply return it and then call to remote data source. When remote data source get response from server, it should update local data source.
    • [ ] In offline mode user can see the previous stored data
    • [ ] Make a favorite icon in repository list item. This favorite data will store in local db.
    • [ ] All favorite repositories will be shown in Favorite page (middle of the bottom tab)
    enhancement 
    opened by hasancse91 8
Owner
Hasan Abdullah
I'm an Android Mobile App developer. Love to solve problem on Online Programming Judge sites. Write on my own website.
Hasan Abdullah
Flutter GetX Template (GetX, Dio, MVVM)

Flutter GetX Template (GetX, Dio, MVVM) This Flutter Template using GetX package for State management, routing and Dependency Injection (bindings). We

null 7 Dec 18, 2022
🚀 User management app built in flutter using clean architecture, MVVM, get it, dio, RxDart, bloc, cubit, getX and provider

?? Go Rest app In this project, we are going to build a user management app using Flutter. We have used the Go REST API to make HTTP request methods.

Sina 99 Aug 14, 2023
will cover the GetX Named Route, GetX Route Transition, GetX Route Result, GetX Route Argument, GetX Route Parameter etc.

getx_playground 1-navigation #2-reactiv A new Fl 3-SimpleStateManagement 4-GetXControllerExample 5- DependencyExample 6-TranslationExample 7-ThemeExam

null 4 Nov 11, 2022
Getx and Dio APi-Integration - Flutter RestApi Integration using Dio

Flutter RestApi Integration using Dio. Click this image to find videos==> //Crud

Fsd Ramjan 9 Nov 5, 2022
Boilerplate for Flutter + GetX MVVM

flutter_getx_boilerplate A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you

Olayemii Garuba 4 May 31, 2022
My boilerplate for flutter with getx & dio environment

flutter_getx_boilerplate A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you

Hafizh Rifqi Fabian 1 Apr 6, 2022
The project of the empty template with Flutter has built the basic framework to realize the functions of internationalization, theme peeling etc.

flutter-bloc-app-template ?? The project of the empty template with Flutter has built the basic framework to realize the functions of internationaliza

Oleksii Shtanko 30 Dec 31, 2022
Starting template for a new Flutter project. Using clean architecture + Riverpod.

flutter_project_template_riverpod Installation Add Flutter to your machine Open this project folder with Terminal/CMD Ensure there's no cache/build le

Bahri Rizaldi 39 Dec 27, 2022
Flutter getx template - A Flutter Template using GetX package for State management, routing and Dependency Injection

Flutter GetX Template (GetX, Dio, MVVM) This Flutter Template using GetX package

Tareq Islam 6 Aug 27, 2022
Turkmen localization flutter - Support for turkmen localization in flutter

Localization for turkmen language Unfortunately, I didn't find any support for t

Atamyrat Babayev 3 Nov 8, 2022
A boilerplate project for Flutter using RiverPod, Dio, auto_route

Flutter Boilerplate A boilerplate project for Flutter using RiverPod, Dio, auto_route, Freezed and generated with very_good_cli. This is a very simple

Gildo Jr 9 Dec 9, 2022
Create flutter project with all needed configuration in two minutes (theme, localization, connect to firebase, FCM, local notifications, safe API call, error handling, animation..etc)

Flutter GetX Template Flutter Getx template to make starting project fast and easy . Introduction We all face the same problem when we want to start a

Emad Beltaje 150 Jan 7, 2023
Flutter boilerplate - A boilerplate project created in flutter using MobX and Provider

Boilerplate Project A boilerplate project created in flutter using MobX and Prov

Wali Khan 0 Jan 22, 2022
Flutter mvvm archi - Flutter Advanced Course - Clean Architecture With MVVM

flutter_mvvm_archi A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you start

Namesh Kushantha 0 Jan 8, 2022
Flutter app using MVVM architecture pattern , dio , provider , intl packages.

News App Simple news application using free news API for fetching realtime data from the internet. Features -Used MVVM architecture pattern. Packages

null 3 Mar 25, 2022
This is a template repository for starting flutter apps with some pre build codes.

flutter_mobile_template A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you

Mazharul Sabbir 5 Nov 16, 2022
Flutter project template with BloC architecture. Implemented many feature as stated in README

Flutter Project Template Using BloC Implementations Theme switching Advanced Routing Bloc Observer for debugging Hydrated Cubit for holding value even

Baran Açıkgöz 9 Dec 10, 2022
A basic template of Flutter to get started. Includes various folders and packages that might be necessary.

Flutter App - Basic Template It's a time saving template with basic project structure, packages and other files like constants.dart to get started rat

Muhammad Hamza 47 Jun 12, 2022
A basic template of Flutter to get started. Includes various folders and packages that might be necessary.

Flutter App - Basic Template It's a time saving template with basic project structure, packages and other files like constants.dart to get started rat

Muhammad Hamza 47 Jun 12, 2022