Skip to content
/ flutter-boilerplate Public template

Start your new Flutter application development with this Flutter boilerplate template

Notifications You must be signed in to change notification settings

ar9t4/flutter-boilerplate

Repository files navigation

🚀 Flutter Boilerplate

Flutter Dart Boilerplate Version

Start your new Flutter application development with this Flutter boilerplate template. This template is completely built with StatefulWidget and Provider.

Pre-Requisites

  1. Install Flutter
  2. Install CocoaPods
  3. Install Android Studio for Android
  4. Install Xcode for iOS
  5. Install Visual Studio Code editor for Flutter development
  6. Setup environment variables for Android
  7. Install Xcode command line tools for iOS
  8. Install an Android Emulator or iOS Simulator

Getting Started

  1. Clone this repo git clone https://github.com/ar9t4/flutter-boilerplate.git
  2. Go to project's root directory, cd flutter-boilerplate
  3. Optional - Remove .git folder and replace/add your repo's .git folder
  4. Run flutter pub get
  5. For iOS - Run cd ios at first, pod install at second and cd.. at third execution
  6. Connect an Android / iOS device or Android Emulator / iOS Simulator
  7. Run flutter run
  8. Woah, You are Done!

Features:

  1. Dio - A pre-configured class for HTTP api calling
  2. Preferences - A pre-configured class for persisting simple data
  3. Providers - Used for state management i.e. updating states on UI while fetching data from network i.e loading, error or data state
  4. AsyncResponse Class - A class for dealing with all possible states of an api call i.e Loading, Error and Data
  5. A bottom tab navigation, navigations between pages, send and recieve data while navigating between pages
  6. Dark Theme support
  7. Multi-Lingual support
  8. Users screen
  9. User Details screen
  10. Settings screen
  11. Feedback screen
  12. More screen

Flutter pub.dev Packages:

  1. Provider For state management
  2. Dio For HTTP networking
  3. JSONAnnotation For JSON serialization and deserialization
  4. Shared Preferences For platform-specific persistance of simple data
  5. Url Launcher For launching a URL on platform-specific browser
  6. Share Plus For A sharing content via the platform-specific share UI
  7. Email Sender For sending emails using platform-specific functionality
  8. Localization For multi-lingual support
  9. Package Info For getting platform-specific package related information like app name, version and etc.

How it looks

Light Mode Dark Mode

Contribution Guidelines

PR's created as per Offical Guidelines are always welcome.