├── .all-contributorsrc
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── api_sdk
├── .gitignore
├── .metadata
├── README.md
├── lib
│ ├── api_constants.dart
│ ├── firebase_method
│ │ ├── api_handles
│ │ │ └── firebase_api.dart
│ │ └── auth_services
│ │ │ └── firebase_auth.dart
│ ├── graphql_method
│ │ ├── graphql_handler.dart
│ │ └── graphql_operation
│ │ │ ├── mutations
│ │ │ ├── add_star.dart
│ │ │ ├── mutations.dart
│ │ │ └── remove_star.dart
│ │ │ └── queries
│ │ │ └── readRepositories.dart
│ ├── main.dart
│ └── rest
│ │ ├── api_helpers
│ │ ├── api_base_helper.dart
│ │ └── api_exception.dart
│ │ └── rest_api_handler_data.dart
├── pubspec.lock
├── pubspec.yaml
└── test
│ └── widget_test.dart
├── app
├── .gitignore
├── .metadata
├── README.md
├── analysis_options.yaml
├── android
│ ├── .gitignore
│ ├── app
│ │ ├── build.gradle
│ │ └── src
│ │ │ ├── debug
│ │ │ └── AndroidManifest.xml
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── kotlin
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── app
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-hdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-mdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-v21
│ │ │ │ └── launch_background.xml
│ │ │ │ ├── drawable-xhdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-xxxhdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable
│ │ │ │ └── launch_background.xml
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── values-night
│ │ │ │ └── styles.xml
│ │ │ │ └── values
│ │ │ │ ├── colors.xml
│ │ │ │ └── styles.xml
│ │ │ └── profile
│ │ │ └── AndroidManifest.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ └── gradle-wrapper.properties
│ └── settings.gradle
├── assets
│ └── images
│ │ ├── 2.0x
│ │ └── logo.png
│ │ ├── 3.0x
│ │ └── logo.png
│ │ └── logo.png
├── ios
│ ├── .gitignore
│ ├── Flutter
│ │ ├── AppFrameworkInfo.plist
│ │ ├── Debug.xcconfig
│ │ └── Release.xcconfig
│ ├── Podfile
│ ├── Podfile.lock
│ ├── Runner.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ └── WorkspaceSettings.xcsettings
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── Runner.xcscheme
│ ├── Runner.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── WorkspaceSettings.xcsettings
│ └── Runner
│ │ ├── AppDelegate.swift
│ │ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ ├── Icon-App-20x20@1x.png
│ │ │ ├── Icon-App-20x20@2x.png
│ │ │ ├── Icon-App-20x20@3x.png
│ │ │ ├── Icon-App-29x29@1x.png
│ │ │ ├── Icon-App-29x29@2x.png
│ │ │ ├── Icon-App-29x29@3x.png
│ │ │ ├── Icon-App-40x40@1x.png
│ │ │ ├── Icon-App-40x40@2x.png
│ │ │ ├── Icon-App-40x40@3x.png
│ │ │ ├── Icon-App-60x60@2x.png
│ │ │ ├── Icon-App-60x60@3x.png
│ │ │ ├── Icon-App-76x76@1x.png
│ │ │ ├── Icon-App-76x76@2x.png
│ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ └── LaunchImage.imageset
│ │ │ ├── Contents.json
│ │ │ ├── LaunchImage.png
│ │ │ ├── LaunchImage@2x.png
│ │ │ ├── LaunchImage@3x.png
│ │ │ └── README.md
│ │ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ │ ├── Info.plist
│ │ └── Runner-Bridging-Header.h
├── lib
│ ├── main.dart
│ └── src
│ │ ├── app.dart
│ │ ├── config
│ │ ├── color_constants.dart
│ │ ├── image_constants.dart
│ │ ├── string_constants.dart
│ │ └── theme_data.dart
│ │ ├── routes
│ │ └── index.dart
│ │ ├── screens
│ │ ├── home
│ │ │ └── index.dart
│ │ └── onboarding
│ │ │ ├── authentication_screen.dart
│ │ │ ├── login_screen.dart
│ │ │ └── signup_screen.dart
│ │ ├── splash_screen.dart
│ │ ├── utils
│ │ ├── app_state_notifier.dart
│ │ └── size_utils.dart
│ │ └── widgets
│ │ └── cache_image_widget.dart
├── pubspec.lock
├── pubspec.yaml
├── test
│ └── widget_test.dart
└── web
│ ├── favicon.png
│ ├── icons
│ ├── Icon-192.png
│ ├── Icon-512.png
│ ├── Icon-maskable-192.png
│ └── Icon-maskable-512.png
│ ├── index.html
│ └── manifest.json
├── clean_project.sh
├── examples
├── book-store-firebase
│ ├── .gitignore
│ ├── README.md
│ ├── api_sdk
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── lib
│ │ │ ├── api_constants.dart
│ │ │ ├── firebase_method
│ │ │ │ ├── api_handles
│ │ │ │ │ └── firebase_api.dart
│ │ │ │ └── auth_services
│ │ │ │ │ └── firebase_auth.dart
│ │ │ ├── main.dart
│ │ │ ├── models
│ │ │ │ └── user.dart
│ │ │ └── rest
│ │ │ │ ├── api_helpers
│ │ │ │ ├── api_base_helper.dart
│ │ │ │ └── api_exception.dart
│ │ │ │ └── rest_api_handler_data.dart
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── widget_test.dart
│ ├── app
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── android
│ │ │ ├── .gitignore
│ │ │ ├── app
│ │ │ │ ├── build.gradle
│ │ │ │ └── src
│ │ │ │ │ ├── debug
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ │ │ ├── main
│ │ │ │ │ ├── AndroidManifest.xml
│ │ │ │ │ ├── kotlin
│ │ │ │ │ │ └── com
│ │ │ │ │ │ │ └── example
│ │ │ │ │ │ │ └── app
│ │ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ │ └── res
│ │ │ │ │ │ ├── drawable-v21
│ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ ├── drawable
│ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── values-night
│ │ │ │ │ │ └── styles.xml
│ │ │ │ │ │ └── values
│ │ │ │ │ │ └── styles.xml
│ │ │ │ │ └── profile
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ ├── build.gradle
│ │ │ ├── gradle.properties
│ │ │ ├── gradle
│ │ │ │ └── wrapper
│ │ │ │ │ └── gradle-wrapper.properties
│ │ │ └── settings.gradle
│ │ ├── assets
│ │ │ ├── books
│ │ │ │ ├── kafkaontheshore.jpg
│ │ │ │ ├── loveisadogfromhell.jpg
│ │ │ │ ├── norwegian.jpg
│ │ │ │ ├── pulpfiction.jpg
│ │ │ │ └── women.jpg
│ │ │ └── images
│ │ │ │ ├── 2.0x
│ │ │ │ └── logo.png
│ │ │ │ ├── 3.0x
│ │ │ │ └── logo.png
│ │ │ │ └── logo.png
│ │ ├── ios
│ │ │ ├── .gitignore
│ │ │ ├── Flutter
│ │ │ │ ├── AppFrameworkInfo.plist
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ └── Release.xcconfig
│ │ │ ├── Runner.xcodeproj
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace
│ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── xcschemes
│ │ │ │ │ └── Runner.xcscheme
│ │ │ ├── Runner.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── Runner
│ │ │ │ ├── AppDelegate.swift
│ │ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ │ └── LaunchImage.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── LaunchImage.png
│ │ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ │ └── README.md
│ │ │ │ ├── Base.lproj
│ │ │ │ ├── LaunchScreen.storyboard
│ │ │ │ └── Main.storyboard
│ │ │ │ ├── Info.plist
│ │ │ │ └── Runner-Bridging-Header.h
│ │ ├── lib
│ │ │ ├── main.dart
│ │ │ └── src
│ │ │ │ ├── app.dart
│ │ │ │ ├── config
│ │ │ │ ├── color_constants.dart
│ │ │ │ ├── image_constants.dart
│ │ │ │ ├── string_constants.dart
│ │ │ │ └── theme_data.dart
│ │ │ │ ├── routes
│ │ │ │ └── index.dart
│ │ │ │ ├── screens
│ │ │ │ ├── bookstore
│ │ │ │ │ ├── add_books.dart
│ │ │ │ │ ├── book_card.dart
│ │ │ │ │ ├── book_details.dart
│ │ │ │ │ └── modify_books.dart
│ │ │ │ ├── home
│ │ │ │ │ └── index.dart
│ │ │ │ └── onboarding
│ │ │ │ │ ├── authentication_screen.dart
│ │ │ │ │ ├── login_screen.dart
│ │ │ │ │ └── signup_screen.dart
│ │ │ │ ├── splash_screen.dart
│ │ │ │ ├── utils
│ │ │ │ ├── app_state_notifier.dart
│ │ │ │ ├── size_utils.dart
│ │ │ │ └── validators.dart
│ │ │ │ └── widgets
│ │ │ │ └── cache_image_widget.dart
│ │ ├── linux
│ │ │ ├── .gitignore
│ │ │ ├── CMakeLists.txt
│ │ │ ├── flutter
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── generated_plugin_registrant.cc
│ │ │ │ ├── generated_plugin_registrant.h
│ │ │ │ └── generated_plugins.cmake
│ │ │ ├── main.cc
│ │ │ ├── my_application.cc
│ │ │ └── my_application.h
│ │ ├── macos
│ │ │ ├── .gitignore
│ │ │ ├── Flutter
│ │ │ │ ├── Flutter-Debug.xcconfig
│ │ │ │ ├── Flutter-Release.xcconfig
│ │ │ │ └── GeneratedPluginRegistrant.swift
│ │ │ ├── Runner.xcodeproj
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── xcschemes
│ │ │ │ │ └── Runner.xcscheme
│ │ │ ├── Runner.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ └── Runner
│ │ │ │ ├── AppDelegate.swift
│ │ │ │ ├── Assets.xcassets
│ │ │ │ └── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── app_icon_1024.png
│ │ │ │ │ ├── app_icon_128.png
│ │ │ │ │ ├── app_icon_16.png
│ │ │ │ │ ├── app_icon_256.png
│ │ │ │ │ ├── app_icon_32.png
│ │ │ │ │ ├── app_icon_512.png
│ │ │ │ │ └── app_icon_64.png
│ │ │ │ ├── Base.lproj
│ │ │ │ └── MainMenu.xib
│ │ │ │ ├── Configs
│ │ │ │ ├── AppInfo.xcconfig
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ ├── Release.xcconfig
│ │ │ │ └── Warnings.xcconfig
│ │ │ │ ├── DebugProfile.entitlements
│ │ │ │ ├── Info.plist
│ │ │ │ ├── MainFlutterWindow.swift
│ │ │ │ └── Release.entitlements
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ ├── web
│ │ │ ├── favicon.png
│ │ │ ├── icons
│ │ │ │ ├── Icon-192.png
│ │ │ │ ├── Icon-512.png
│ │ │ │ ├── Icon-maskable-192.png
│ │ │ │ └── Icon-maskable-512.png
│ │ │ ├── index.html
│ │ │ └── manifest.json
│ │ └── windows
│ │ │ ├── .gitignore
│ │ │ ├── CMakeLists.txt
│ │ │ ├── flutter
│ │ │ ├── CMakeLists.txt
│ │ │ ├── generated_plugin_registrant.cc
│ │ │ ├── generated_plugin_registrant.h
│ │ │ └── generated_plugins.cmake
│ │ │ └── runner
│ │ │ ├── CMakeLists.txt
│ │ │ ├── Runner.rc
│ │ │ ├── flutter_window.cpp
│ │ │ ├── flutter_window.h
│ │ │ ├── main.cpp
│ │ │ ├── resource.h
│ │ │ ├── resources
│ │ │ └── app_icon.ico
│ │ │ ├── runner.exe.manifest
│ │ │ ├── utils.cpp
│ │ │ ├── utils.h
│ │ │ ├── win32_window.cpp
│ │ │ └── win32_window.h
│ ├── book_store.gif
│ ├── clean_project.sh
│ ├── run_script.sh
│ └── shared
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── lib
│ │ ├── main.dart
│ │ └── modules
│ │ │ ├── authentication
│ │ │ ├── auth.dart
│ │ │ ├── bloc
│ │ │ │ ├── authentication
│ │ │ │ │ ├── authentication_bloc.dart
│ │ │ │ │ ├── authentication_bloc_public.dart
│ │ │ │ │ ├── authentication_event.dart
│ │ │ │ │ └── authentication_state.dart
│ │ │ │ └── bloc_controller.dart
│ │ │ └── resources
│ │ │ │ └── authentication_repository.dart
│ │ │ └── bookstore
│ │ │ ├── models
│ │ │ └── book_store_model.dart
│ │ │ └── resources
│ │ │ └── firebase_crud_operations.dart
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ └── test
│ │ └── widget_test.dart
├── github-repository-list
│ ├── README.md
│ ├── api_sdk
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── lib
│ │ │ ├── api_constants.dart
│ │ │ ├── graphql_method
│ │ │ │ ├── graphql_handler.dart
│ │ │ │ └── graphql_operation
│ │ │ │ │ ├── mutations
│ │ │ │ │ ├── add_star.dart
│ │ │ │ │ ├── mutations.dart
│ │ │ │ │ └── remove_star.dart
│ │ │ │ │ └── queries
│ │ │ │ │ └── readRepositories.dart
│ │ │ ├── main.dart
│ │ │ └── rest
│ │ │ │ ├── api_helpers
│ │ │ │ ├── api_base_helper.dart
│ │ │ │ └── api_exception.dart
│ │ │ │ └── rest_api_handler_data.dart
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── widget_test.dart
│ ├── app
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── android
│ │ │ ├── .gitignore
│ │ │ ├── app
│ │ │ │ ├── build.gradle
│ │ │ │ └── src
│ │ │ │ │ ├── debug
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ │ │ ├── main
│ │ │ │ │ ├── AndroidManifest.xml
│ │ │ │ │ ├── kotlin
│ │ │ │ │ │ └── com
│ │ │ │ │ │ │ └── example
│ │ │ │ │ │ │ └── app
│ │ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ │ └── res
│ │ │ │ │ │ ├── drawable-v21
│ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ ├── drawable
│ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── values-night
│ │ │ │ │ │ └── styles.xml
│ │ │ │ │ │ └── values
│ │ │ │ │ │ └── styles.xml
│ │ │ │ │ └── profile
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ ├── build.gradle
│ │ │ ├── gradle.properties
│ │ │ ├── gradle
│ │ │ │ └── wrapper
│ │ │ │ │ └── gradle-wrapper.properties
│ │ │ └── settings.gradle
│ │ ├── assets
│ │ │ └── images
│ │ │ │ ├── 2.0x
│ │ │ │ └── logo.png
│ │ │ │ ├── 3.0x
│ │ │ │ └── logo.png
│ │ │ │ └── logo.png
│ │ ├── ios
│ │ │ ├── .gitignore
│ │ │ ├── Flutter
│ │ │ │ ├── AppFrameworkInfo.plist
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ └── Release.xcconfig
│ │ │ ├── Runner.xcodeproj
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace
│ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── xcschemes
│ │ │ │ │ └── Runner.xcscheme
│ │ │ ├── Runner.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── Runner
│ │ │ │ ├── AppDelegate.swift
│ │ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ │ └── LaunchImage.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── LaunchImage.png
│ │ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ │ └── README.md
│ │ │ │ ├── Base.lproj
│ │ │ │ ├── LaunchScreen.storyboard
│ │ │ │ └── Main.storyboard
│ │ │ │ ├── Info.plist
│ │ │ │ └── Runner-Bridging-Header.h
│ │ ├── lib
│ │ │ ├── main.dart
│ │ │ └── src
│ │ │ │ ├── app.dart
│ │ │ │ ├── config
│ │ │ │ ├── color_constants.dart
│ │ │ │ ├── image_constants.dart
│ │ │ │ ├── string_constants.dart
│ │ │ │ └── theme_data.dart
│ │ │ │ ├── routes
│ │ │ │ └── index.dart
│ │ │ │ ├── screens
│ │ │ │ ├── home
│ │ │ │ │ ├── github_repo_list_screen.dart
│ │ │ │ │ └── index.dart
│ │ │ │ └── onboarding
│ │ │ │ │ ├── authentication_screen.dart
│ │ │ │ │ ├── login_screen.dart
│ │ │ │ │ └── signup_screen.dart
│ │ │ │ ├── splash_screen.dart
│ │ │ │ ├── utils
│ │ │ │ ├── app_state_notifier.dart
│ │ │ │ └── size_utils.dart
│ │ │ │ └── widgets
│ │ │ │ └── cache_image_widget.dart
│ │ ├── linux
│ │ │ ├── .gitignore
│ │ │ ├── CMakeLists.txt
│ │ │ ├── flutter
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── generated_plugin_registrant.cc
│ │ │ │ ├── generated_plugin_registrant.h
│ │ │ │ └── generated_plugins.cmake
│ │ │ ├── main.cc
│ │ │ ├── my_application.cc
│ │ │ └── my_application.h
│ │ ├── macos
│ │ │ ├── .gitignore
│ │ │ ├── Flutter
│ │ │ │ ├── Flutter-Debug.xcconfig
│ │ │ │ ├── Flutter-Release.xcconfig
│ │ │ │ └── GeneratedPluginRegistrant.swift
│ │ │ ├── Runner.xcodeproj
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── xcschemes
│ │ │ │ │ └── Runner.xcscheme
│ │ │ ├── Runner.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ └── Runner
│ │ │ │ ├── AppDelegate.swift
│ │ │ │ ├── Assets.xcassets
│ │ │ │ └── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── app_icon_1024.png
│ │ │ │ │ ├── app_icon_128.png
│ │ │ │ │ ├── app_icon_16.png
│ │ │ │ │ ├── app_icon_256.png
│ │ │ │ │ ├── app_icon_32.png
│ │ │ │ │ ├── app_icon_512.png
│ │ │ │ │ └── app_icon_64.png
│ │ │ │ ├── Base.lproj
│ │ │ │ └── MainMenu.xib
│ │ │ │ ├── Configs
│ │ │ │ ├── AppInfo.xcconfig
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ ├── Release.xcconfig
│ │ │ │ └── Warnings.xcconfig
│ │ │ │ ├── DebugProfile.entitlements
│ │ │ │ ├── Info.plist
│ │ │ │ ├── MainFlutterWindow.swift
│ │ │ │ └── Release.entitlements
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ ├── web
│ │ │ ├── favicon.png
│ │ │ ├── icons
│ │ │ │ ├── Icon-192.png
│ │ │ │ ├── Icon-512.png
│ │ │ │ ├── Icon-maskable-192.png
│ │ │ │ └── Icon-maskable-512.png
│ │ │ ├── index.html
│ │ │ └── manifest.json
│ │ └── windows
│ │ │ ├── .gitignore
│ │ │ ├── CMakeLists.txt
│ │ │ ├── flutter
│ │ │ ├── CMakeLists.txt
│ │ │ ├── generated_plugin_registrant.cc
│ │ │ ├── generated_plugin_registrant.h
│ │ │ └── generated_plugins.cmake
│ │ │ └── runner
│ │ │ ├── CMakeLists.txt
│ │ │ ├── Runner.rc
│ │ │ ├── flutter_window.cpp
│ │ │ ├── flutter_window.h
│ │ │ ├── main.cpp
│ │ │ ├── resource.h
│ │ │ ├── resources
│ │ │ └── app_icon.ico
│ │ │ ├── runner.exe.manifest
│ │ │ ├── utils.cpp
│ │ │ ├── utils.h
│ │ │ ├── win32_window.cpp
│ │ │ └── win32_window.h
│ ├── clean_project.sh
│ ├── github_repo.gif
│ ├── run_script.sh
│ └── shared
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── lib
│ │ ├── main.dart
│ │ └── modules
│ │ │ ├── authentication
│ │ │ ├── auth.dart
│ │ │ ├── bloc
│ │ │ │ ├── authentication
│ │ │ │ │ ├── authentication_bloc.dart
│ │ │ │ │ ├── authentication_bloc_public.dart
│ │ │ │ │ ├── authentication_event.dart
│ │ │ │ │ └── authentication_state.dart
│ │ │ │ └── bloc_controller.dart
│ │ │ ├── models
│ │ │ │ ├── auth_models_public.dart
│ │ │ │ ├── current_user_data.dart
│ │ │ │ ├── firebase_user.dart
│ │ │ │ ├── token.dart
│ │ │ │ ├── user.dart
│ │ │ │ └── user_data.dart
│ │ │ └── resources
│ │ │ │ └── authentication_repository.dart
│ │ │ └── github_repo
│ │ │ ├── bloc
│ │ │ ├── github_repo_bloc
│ │ │ │ ├── github_repo_bloc.dart
│ │ │ │ ├── github_repo_event.dart
│ │ │ │ ├── github_repo_public.dart
│ │ │ │ └── github_repo_state.dart
│ │ │ └── github_repo_bloc_controller.dart
│ │ │ ├── models
│ │ │ └── repo.dart
│ │ │ └── resources
│ │ │ └── github_repo_resouces.dart
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ └── test
│ │ └── widget_test.dart
├── hacker-news
│ ├── README.md
│ ├── api_sdk
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── lib
│ │ │ ├── api_constants.dart
│ │ │ ├── main.dart
│ │ │ └── rest
│ │ │ │ ├── api_helpers
│ │ │ │ ├── api_base_helper.dart
│ │ │ │ └── api_exception.dart
│ │ │ │ └── rest_api_handler_data.dart
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── widget_test.dart
│ ├── app
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── android
│ │ │ ├── .gitignore
│ │ │ ├── app
│ │ │ │ ├── build.gradle
│ │ │ │ └── src
│ │ │ │ │ ├── debug
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ │ │ ├── main
│ │ │ │ │ ├── AndroidManifest.xml
│ │ │ │ │ ├── kotlin
│ │ │ │ │ │ └── com
│ │ │ │ │ │ │ └── example
│ │ │ │ │ │ │ └── app
│ │ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ │ └── res
│ │ │ │ │ │ ├── drawable-v21
│ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ ├── drawable
│ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ ├── values-night
│ │ │ │ │ │ └── styles.xml
│ │ │ │ │ │ └── values
│ │ │ │ │ │ └── styles.xml
│ │ │ │ │ └── profile
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ ├── build.gradle
│ │ │ ├── gradle.properties
│ │ │ ├── gradle
│ │ │ │ └── wrapper
│ │ │ │ │ └── gradle-wrapper.properties
│ │ │ └── settings.gradle
│ │ ├── assets
│ │ │ └── images
│ │ │ │ ├── 2.0x
│ │ │ │ └── logo.png
│ │ │ │ ├── 3.0x
│ │ │ │ └── logo.png
│ │ │ │ └── logo.png
│ │ ├── ios
│ │ │ ├── .gitignore
│ │ │ ├── Flutter
│ │ │ │ ├── AppFrameworkInfo.plist
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ └── Release.xcconfig
│ │ │ ├── Runner.xcodeproj
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace
│ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── xcschemes
│ │ │ │ │ └── Runner.xcscheme
│ │ │ ├── Runner.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── Runner
│ │ │ │ ├── AppDelegate.swift
│ │ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ │ └── LaunchImage.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── LaunchImage.png
│ │ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ │ └── README.md
│ │ │ │ ├── Base.lproj
│ │ │ │ ├── LaunchScreen.storyboard
│ │ │ │ └── Main.storyboard
│ │ │ │ ├── Info.plist
│ │ │ │ └── Runner-Bridging-Header.h
│ │ ├── lib
│ │ │ ├── main.dart
│ │ │ └── src
│ │ │ │ ├── app.dart
│ │ │ │ ├── config
│ │ │ │ ├── color_constants.dart
│ │ │ │ ├── image_constants.dart
│ │ │ │ ├── string_constants.dart
│ │ │ │ └── theme_data.dart
│ │ │ │ ├── routes
│ │ │ │ └── index.dart
│ │ │ │ ├── screens
│ │ │ │ ├── home
│ │ │ │ │ └── index.dart
│ │ │ │ ├── news_screens
│ │ │ │ │ ├── news_details.dart
│ │ │ │ │ └── news_list.dart
│ │ │ │ └── onboarding
│ │ │ │ │ ├── authentication_screen.dart
│ │ │ │ │ ├── login_screen.dart
│ │ │ │ │ └── signup_screen.dart
│ │ │ │ ├── splash_screen.dart
│ │ │ │ ├── utils
│ │ │ │ ├── app_state_notifier.dart
│ │ │ │ └── size_utils.dart
│ │ │ │ └── widgets
│ │ │ │ ├── cache_image_widget.dart
│ │ │ │ ├── comment.dart
│ │ │ │ ├── loading_container.dart
│ │ │ │ ├── news_list_tiles.dart
│ │ │ │ ├── refresh.dart
│ │ │ │ └── web_view_details.dart
│ │ ├── linux
│ │ │ ├── .gitignore
│ │ │ ├── CMakeLists.txt
│ │ │ ├── flutter
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── generated_plugin_registrant.cc
│ │ │ │ ├── generated_plugin_registrant.h
│ │ │ │ └── generated_plugins.cmake
│ │ │ ├── main.cc
│ │ │ ├── my_application.cc
│ │ │ └── my_application.h
│ │ ├── macos
│ │ │ ├── .gitignore
│ │ │ ├── Flutter
│ │ │ │ ├── Flutter-Debug.xcconfig
│ │ │ │ ├── Flutter-Release.xcconfig
│ │ │ │ └── GeneratedPluginRegistrant.swift
│ │ │ ├── Runner.xcodeproj
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── xcschemes
│ │ │ │ │ └── Runner.xcscheme
│ │ │ ├── Runner.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ └── Runner
│ │ │ │ ├── AppDelegate.swift
│ │ │ │ ├── Assets.xcassets
│ │ │ │ └── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── app_icon_1024.png
│ │ │ │ │ ├── app_icon_128.png
│ │ │ │ │ ├── app_icon_16.png
│ │ │ │ │ ├── app_icon_256.png
│ │ │ │ │ ├── app_icon_32.png
│ │ │ │ │ ├── app_icon_512.png
│ │ │ │ │ └── app_icon_64.png
│ │ │ │ ├── Base.lproj
│ │ │ │ └── MainMenu.xib
│ │ │ │ ├── Configs
│ │ │ │ ├── AppInfo.xcconfig
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ ├── Release.xcconfig
│ │ │ │ └── Warnings.xcconfig
│ │ │ │ ├── DebugProfile.entitlements
│ │ │ │ ├── Info.plist
│ │ │ │ ├── MainFlutterWindow.swift
│ │ │ │ └── Release.entitlements
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ ├── web
│ │ │ ├── favicon.png
│ │ │ ├── icons
│ │ │ │ ├── Icon-192.png
│ │ │ │ ├── Icon-512.png
│ │ │ │ ├── Icon-maskable-192.png
│ │ │ │ └── Icon-maskable-512.png
│ │ │ ├── index.html
│ │ │ └── manifest.json
│ │ └── windows
│ │ │ ├── .gitignore
│ │ │ ├── CMakeLists.txt
│ │ │ ├── flutter
│ │ │ ├── CMakeLists.txt
│ │ │ ├── generated_plugin_registrant.cc
│ │ │ ├── generated_plugin_registrant.h
│ │ │ └── generated_plugins.cmake
│ │ │ └── runner
│ │ │ ├── CMakeLists.txt
│ │ │ ├── Runner.rc
│ │ │ ├── flutter_window.cpp
│ │ │ ├── flutter_window.h
│ │ │ ├── main.cpp
│ │ │ ├── resource.h
│ │ │ ├── resources
│ │ │ └── app_icon.ico
│ │ │ ├── runner.exe.manifest
│ │ │ ├── utils.cpp
│ │ │ ├── utils.h
│ │ │ ├── win32_window.cpp
│ │ │ └── win32_window.h
│ ├── clean_project.sh
│ ├── hacker_news.gif
│ ├── run_script.sh
│ └── shared
│ │ ├── .gitignore
│ │ ├── .metadata
│ │ ├── README.md
│ │ ├── lib
│ │ ├── main.dart
│ │ └── modules
│ │ │ ├── authentication
│ │ │ ├── auth.dart
│ │ │ ├── bloc
│ │ │ │ ├── authentication
│ │ │ │ │ ├── authentication_bloc.dart
│ │ │ │ │ ├── authentication_bloc_public.dart
│ │ │ │ │ ├── authentication_event.dart
│ │ │ │ │ └── authentication_state.dart
│ │ │ │ └── bloc_controller.dart
│ │ │ ├── models
│ │ │ │ ├── auth_models_public.dart
│ │ │ │ ├── current_user_data.dart
│ │ │ │ ├── firebase_user.dart
│ │ │ │ ├── token.dart
│ │ │ │ ├── user.dart
│ │ │ │ └── user_data.dart
│ │ │ └── resources
│ │ │ │ └── authentication_repository.dart
│ │ │ └── hacker_news
│ │ │ ├── bloc
│ │ │ ├── comment_provider.dart
│ │ │ ├── comments_bloc.dart
│ │ │ ├── stories_bloc.dart
│ │ │ └── stories_provider.dart
│ │ │ ├── models
│ │ │ ├── data_models
│ │ │ │ └── news_item_model.dart
│ │ │ └── news_models_public.dart
│ │ │ └── resources
│ │ │ ├── news_repository.dart
│ │ │ └── resource_provider
│ │ │ ├── news_api_provider.dart
│ │ │ └── news_db_provider.dart
│ │ ├── pubspec.lock
│ │ ├── pubspec.yaml
│ │ └── test
│ │ └── widget_test.dart
└── weather-app
│ ├── README.md
│ ├── api_sdk
│ ├── .gitignore
│ ├── .metadata
│ ├── README.md
│ ├── lib
│ │ ├── api_constants.dart
│ │ ├── main.dart
│ │ └── rest
│ │ │ ├── api_helpers
│ │ │ ├── api_base_helper.dart
│ │ │ └── api_exception.dart
│ │ │ └── rest_api_handler_data.dart
│ ├── pubspec.lock
│ ├── pubspec.yaml
│ └── test
│ │ └── widget_test.dart
│ ├── app
│ ├── .gitignore
│ ├── .metadata
│ ├── README.md
│ ├── analysis_options.yaml
│ ├── android
│ │ ├── .gitignore
│ │ ├── app
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ ├── debug
│ │ │ │ └── AndroidManifest.xml
│ │ │ │ ├── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── kotlin
│ │ │ │ │ └── com
│ │ │ │ │ │ └── example
│ │ │ │ │ │ └── app
│ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ └── res
│ │ │ │ │ ├── drawable-v21
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── drawable
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── values-night
│ │ │ │ │ └── styles.xml
│ │ │ │ │ └── values
│ │ │ │ │ └── styles.xml
│ │ │ │ └── profile
│ │ │ │ └── AndroidManifest.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ └── gradle-wrapper.properties
│ │ └── settings.gradle
│ ├── assets
│ │ └── images
│ │ │ ├── 2.0x
│ │ │ └── logo.png
│ │ │ ├── 3.0x
│ │ │ └── logo.png
│ │ │ └── logo.png
│ ├── ios
│ │ ├── .gitignore
│ │ ├── Flutter
│ │ │ ├── AppFrameworkInfo.plist
│ │ │ ├── Debug.xcconfig
│ │ │ └── Release.xcconfig
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ └── WorkspaceSettings.xcsettings
│ │ └── Runner
│ │ │ ├── AppDelegate.swift
│ │ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ └── LaunchImage.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── LaunchImage.png
│ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ └── README.md
│ │ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ │ ├── Info.plist
│ │ │ └── Runner-Bridging-Header.h
│ ├── lib
│ │ ├── main.dart
│ │ └── src
│ │ │ ├── app.dart
│ │ │ ├── config
│ │ │ ├── color_constants.dart
│ │ │ ├── image_constants.dart
│ │ │ ├── string_constants.dart
│ │ │ └── theme_data.dart
│ │ │ ├── routes
│ │ │ └── index.dart
│ │ │ ├── screens
│ │ │ ├── home
│ │ │ │ └── index.dart
│ │ │ ├── onboarding
│ │ │ │ ├── authentication_screen.dart
│ │ │ │ ├── login_screen.dart
│ │ │ │ └── signup_screen.dart
│ │ │ └── weather_screens
│ │ │ │ ├── weather_page.dart
│ │ │ │ └── widgets
│ │ │ │ └── build_weather.dart
│ │ │ ├── splash_screen.dart
│ │ │ ├── utils
│ │ │ ├── app_state_notifier.dart
│ │ │ └── size_utils.dart
│ │ │ └── widgets
│ │ │ └── cache_image_widget.dart
│ ├── linux
│ │ ├── .gitignore
│ │ ├── CMakeLists.txt
│ │ ├── flutter
│ │ │ ├── CMakeLists.txt
│ │ │ ├── generated_plugin_registrant.cc
│ │ │ ├── generated_plugin_registrant.h
│ │ │ └── generated_plugins.cmake
│ │ ├── main.cc
│ │ ├── my_application.cc
│ │ └── my_application.h
│ ├── macos
│ │ ├── .gitignore
│ │ ├── Flutter
│ │ │ ├── Flutter-Debug.xcconfig
│ │ │ ├── Flutter-Release.xcconfig
│ │ │ └── GeneratedPluginRegistrant.swift
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ └── IDEWorkspaceChecks.plist
│ │ └── Runner
│ │ │ ├── AppDelegate.swift
│ │ │ ├── Assets.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── app_icon_1024.png
│ │ │ │ ├── app_icon_128.png
│ │ │ │ ├── app_icon_16.png
│ │ │ │ ├── app_icon_256.png
│ │ │ │ ├── app_icon_32.png
│ │ │ │ ├── app_icon_512.png
│ │ │ │ └── app_icon_64.png
│ │ │ ├── Base.lproj
│ │ │ └── MainMenu.xib
│ │ │ ├── Configs
│ │ │ ├── AppInfo.xcconfig
│ │ │ ├── Debug.xcconfig
│ │ │ ├── Release.xcconfig
│ │ │ └── Warnings.xcconfig
│ │ │ ├── DebugProfile.entitlements
│ │ │ ├── Info.plist
│ │ │ ├── MainFlutterWindow.swift
│ │ │ └── Release.entitlements
│ ├── pubspec.lock
│ ├── pubspec.yaml
│ ├── web
│ │ ├── favicon.png
│ │ ├── icons
│ │ │ ├── Icon-192.png
│ │ │ ├── Icon-512.png
│ │ │ ├── Icon-maskable-192.png
│ │ │ └── Icon-maskable-512.png
│ │ ├── index.html
│ │ └── manifest.json
│ └── windows
│ │ ├── .gitignore
│ │ ├── CMakeLists.txt
│ │ ├── flutter
│ │ ├── CMakeLists.txt
│ │ ├── generated_plugin_registrant.cc
│ │ ├── generated_plugin_registrant.h
│ │ └── generated_plugins.cmake
│ │ └── runner
│ │ ├── CMakeLists.txt
│ │ ├── Runner.rc
│ │ ├── flutter_window.cpp
│ │ ├── flutter_window.h
│ │ ├── main.cpp
│ │ ├── resource.h
│ │ ├── resources
│ │ └── app_icon.ico
│ │ ├── runner.exe.manifest
│ │ ├── utils.cpp
│ │ ├── utils.h
│ │ ├── win32_window.cpp
│ │ └── win32_window.h
│ ├── clean_project.sh
│ ├── run_script.sh
│ ├── shared
│ ├── .gitignore
│ ├── .metadata
│ ├── README.md
│ ├── lib
│ │ ├── main.dart
│ │ └── modules
│ │ │ ├── authentication
│ │ │ ├── auth.dart
│ │ │ ├── bloc
│ │ │ │ ├── authentication
│ │ │ │ │ ├── authentication_bloc.dart
│ │ │ │ │ ├── authentication_bloc_public.dart
│ │ │ │ │ ├── authentication_event.dart
│ │ │ │ │ └── authentication_state.dart
│ │ │ │ └── bloc_controller.dart
│ │ │ ├── models
│ │ │ │ ├── auth_models_public.dart
│ │ │ │ ├── current_user_data.dart
│ │ │ │ ├── firebase_user.dart
│ │ │ │ ├── token.dart
│ │ │ │ ├── user.dart
│ │ │ │ └── user_data.dart
│ │ │ └── resources
│ │ │ │ └── authentication_repository.dart
│ │ │ └── weather_app
│ │ │ ├── bloc
│ │ │ ├── weather_bloc.dart
│ │ │ ├── weather_bloc_public.dart
│ │ │ ├── weather_events.dart
│ │ │ └── weather_states.dart
│ │ │ ├── models
│ │ │ └── weather_model.dart
│ │ │ └── resources
│ │ │ └── weather_resources.dart
│ ├── pubspec.lock
│ ├── pubspec.yaml
│ └── test
│ │ └── widget_test.dart
│ └── weather-app.gif
├── flutter_starter_kit.gif
├── github_repo_list.gif
├── hacker_news.gif
├── run_script.sh
├── shared
├── .gitignore
├── .metadata
├── README.md
├── lib
│ ├── main.dart
│ └── modules
│ │ └── authentication
│ │ ├── auth.dart
│ │ ├── bloc
│ │ ├── authentication
│ │ │ ├── authentication_bloc.dart
│ │ │ ├── authentication_bloc_public.dart
│ │ │ ├── authentication_event.dart
│ │ │ └── authentication_state.dart
│ │ └── bloc_controller.dart
│ │ ├── models
│ │ ├── auth_models_public.dart
│ │ ├── current_user_data.dart
│ │ ├── firebase_user.dart
│ │ ├── token.dart
│ │ ├── user.dart
│ │ └── user_data.dart
│ │ └── resources
│ │ └── authentication_repository.dart
├── pubspec.lock
├── pubspec.yaml
└── test
│ └── widget_test.dart
└── weather_app.gif
/api_sdk/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 8874f21e79d7ec66d0457c7ab338348e31b17f1d
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/api_sdk/lib/graphql_method/graphql_operation/mutations/add_star.dart:
--------------------------------------------------------------------------------
1 | const String addStar = r'''
2 | mutation AddStar($starrableId: ID!) {
3 | action: addStar(input: {starrableId: $starrableId}) {
4 | starrable {
5 | viewerHasStarred
6 | }
7 | }
8 | }
9 | ''';
10 |
--------------------------------------------------------------------------------
/api_sdk/lib/graphql_method/graphql_operation/mutations/mutations.dart:
--------------------------------------------------------------------------------
1 | export './add_star.dart';
2 | export './remove_star.dart';
3 |
--------------------------------------------------------------------------------
/api_sdk/lib/graphql_method/graphql_operation/mutations/remove_star.dart:
--------------------------------------------------------------------------------
1 | const String removeStar = r'''
2 | mutation RemoveStar($starrableId: ID!) {
3 | action: removeStar(input: {starrableId: $starrableId}) {
4 | starrable {
5 | viewerHasStarred
6 | }
7 | }
8 | }
9 | ''';
10 |
--------------------------------------------------------------------------------
/api_sdk/lib/graphql_method/graphql_operation/queries/readRepositories.dart:
--------------------------------------------------------------------------------
1 | const String readRepositories = r'''
2 | query ReadRepositories($nRepositories: Int!) {
3 | viewer {
4 | repositories(last: $nRepositories) {
5 | nodes {
6 | __typename
7 | id
8 | name
9 | viewerHasStarred
10 | }
11 | }
12 | }
13 | }
14 | ''';
15 |
16 | const String testSubscription = r'''
17 | subscription test {
18 | deviceChanged(id: 2) {
19 | id
20 | name
21 | }
22 | }
23 | ''';
24 |
--------------------------------------------------------------------------------
/api_sdk/lib/rest/rest_api_handler_data.dart:
--------------------------------------------------------------------------------
1 | import 'package:api_sdk/rest/api_helpers/api_base_helper.dart';
2 |
3 | class RestApiHandlerData {
4 | static ApiBaseHelper _apiBaseHelper = ApiBaseHelper();
5 | static getData(String path) async {
6 | final response = await _apiBaseHelper.get('$path');
7 | return response;
8 | }
9 |
10 | static postData(String path, dynamic body) async {
11 | final response = await _apiBaseHelper.post('$path', body);
12 | return response;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/api_sdk/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | void main() {}
9 |
--------------------------------------------------------------------------------
/app/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 8874f21e79d7ec66d0457c7ab338348e31b17f1d
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/app/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
11 | key.properties
12 |
--------------------------------------------------------------------------------
/app/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/android/app/src/main/kotlin/com/example/app/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.app
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | import android.os.Build
6 | import android.view.ViewTreeObserver
7 | import android.view.WindowManager
8 | class MainActivity: FlutterActivity() {
9 | }
--------------------------------------------------------------------------------
/app/android/app/src/main/res/drawable-hdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/drawable-hdpi/splash.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/drawable-mdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/drawable-mdpi/splash.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/app/android/app/src/main/res/drawable-xhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/drawable-xhdpi/splash.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/drawable-xxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/drawable-xxhdpi/splash.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/drawable-xxxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/drawable-xxxhdpi/splash.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/android/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #5E92F3
4 |
--------------------------------------------------------------------------------
/app/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 | android.enableR8=true
5 |
--------------------------------------------------------------------------------
/app/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
7 |
--------------------------------------------------------------------------------
/app/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
4 | def properties = new Properties()
5 |
6 | assert localPropertiesFile.exists()
7 | localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
8 |
9 | def flutterSdkPath = properties.getProperty("flutter.sdk")
10 | assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
11 | apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
12 |
--------------------------------------------------------------------------------
/app/assets/images/2.0x/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/assets/images/2.0x/logo.png
--------------------------------------------------------------------------------
/app/assets/images/3.0x/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/assets/images/3.0x/logo.png
--------------------------------------------------------------------------------
/app/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/assets/images/logo.png
--------------------------------------------------------------------------------
/app/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/app/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/app/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | var flutter_native_splash = 1
11 | UIApplication.shared.isStatusBarHidden = false
12 |
13 | GeneratedPluginRegistrant.register(with: self)
14 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
15 | }
16 | }
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/app/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/app/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:app/src/app.dart';
2 | import 'package:app/src/utils/app_state_notifier.dart';
3 | import 'package:flutter/material.dart';
4 | import 'package:provider/provider.dart';
5 |
6 | void main() {
7 | runApp(
8 | ChangeNotifierProvider(
9 | create: (_) => AppStateNotifier(),
10 | child: App(),
11 | ),
12 | );
13 | }
14 |
--------------------------------------------------------------------------------
/app/lib/src/config/image_constants.dart:
--------------------------------------------------------------------------------
1 | class AllImages {
2 | AllImages._();
3 | static AllImages _instance = AllImages._();
4 | factory AllImages() => _instance;
5 |
6 | String image = 'assets/image';
7 | String logo = 'assets/images/logo.png';
8 | String kDefaultImage =
9 | 'https://cdn.pixabay.com/photo/2016/08/08/09/17/avatar-1577909_1280.png';
10 | }
11 |
--------------------------------------------------------------------------------
/app/lib/src/config/string_constants.dart:
--------------------------------------------------------------------------------
1 | library constants;
2 |
3 | // Onboarding Screens
4 | const String app_name = "APP NAME";
5 |
6 | // tabs
7 | const String tab0 = "Tab 0";
8 | const String tab1 = "Tab 1";
9 | const String tab2 = "Tab 2";
10 | const String tab3 = "Tab 3";
11 |
12 | //Screen 1
13 | const String screen_util = "Screen";
14 |
15 | //home
16 | const String app_bar_title = 'Flutter Starter';
17 |
--------------------------------------------------------------------------------
/app/lib/src/utils/app_state_notifier.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class AppStateNotifier extends ChangeNotifier {
4 | bool isDarkMode = false;
5 |
6 | void updateTheme(bool isDarkMode) {
7 | this.isDarkMode = isDarkMode;
8 | notifyListeners();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/app/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | void main() {}
9 |
--------------------------------------------------------------------------------
/app/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/web/favicon.png
--------------------------------------------------------------------------------
/app/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/app/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/app/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/app/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/app/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/clean_project.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | cd api_sdk
4 | echo "+++++API SDK pub clean+++++"
5 | flutter clean
6 | echo "+++++API SDK done+++++"
7 |
8 |
9 | cd ../shared
10 | echo "+++++Shared pub clean+++++"
11 | flutter clean
12 | echo "+++++Shared done+++++"
13 |
14 | cd ../app
15 | echo "+++++Main app pub clean+++++"
16 | flutter clean
17 | echo "+++++Cleaning done+++++"
--------------------------------------------------------------------------------
/examples/book-store-firebase/README.md:
--------------------------------------------------------------------------------
1 | # Flutter starter
2 |
3 |
4 | To start with this app you need to set up few things.
5 |
6 | Please refer to the [documentation](https://flutter-starter.github.io/docs/bookstore-firebase-app-example) for the steps.
7 |
8 | The demo for the app look like this:
9 |
10 |
11 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/api_sdk/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 8874f21e79d7ec66d0457c7ab338348e31b17f1d
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/api_sdk/lib/api_constants.dart:
--------------------------------------------------------------------------------
1 | Map apiConstants = {"auth": "https://reqres.in/api"};
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/api_sdk/lib/models/user.dart:
--------------------------------------------------------------------------------
1 | class MyUser {
2 | final String uid;
3 | final String email;
4 | final String token;
5 | final String avatar;
6 |
7 | MyUser({
8 | this.uid,
9 | this.email,
10 | this.token,
11 | this.avatar =
12 | "https://i.pinimg.com/736x/89/90/48/899048ab0cc455154006fdb9676964b3.jpg",
13 | });
14 | }
15 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/api_sdk/lib/rest/rest_api_handler_data.dart:
--------------------------------------------------------------------------------
1 | import 'package:api_sdk/rest/api_helpers/api_base_helper.dart';
2 |
3 | class RestApiHandlerData {
4 | static ApiBaseHelper _apiBaseHelper = ApiBaseHelper();
5 | static getData(String path) async {
6 | final response = await _apiBaseHelper.get('$path');
7 | return response;
8 | }
9 |
10 | static postData(String path, dynamic body) async {
11 | final response = await _apiBaseHelper.post('$path', body);
12 | return response;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/api_sdk/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | void main() {}
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 7e9793dee1b85a243edd0e06cb1658e98b077561
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/kotlin/com/example/app/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.app
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
7 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
4 | def properties = new Properties()
5 |
6 | assert localPropertiesFile.exists()
7 | localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
8 |
9 | def flutterSdkPath = properties.getProperty("flutter.sdk")
10 | assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
11 | apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
12 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/books/kafkaontheshore.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/books/kafkaontheshore.jpg
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/books/loveisadogfromhell.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/books/loveisadogfromhell.jpg
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/books/norwegian.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/books/norwegian.jpg
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/books/pulpfiction.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/books/pulpfiction.jpg
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/books/women.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/books/women.jpg
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/images/2.0x/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/images/2.0x/logo.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/images/3.0x/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/images/3.0x/logo.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/assets/images/logo.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/lib/src/config/image_constants.dart:
--------------------------------------------------------------------------------
1 | class AllImages {
2 | AllImages._();
3 | static AllImages _instance = AllImages._();
4 | factory AllImages() => _instance;
5 | String image = 'assets/image';
6 | String logo = 'assets/images/logo.png';
7 | String kDefaultImage =
8 | 'https://cdn.pixabay.com/photo/2016/08/08/09/17/avatar-1577909_1280.png';
9 | }
10 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/lib/src/config/string_constants.dart:
--------------------------------------------------------------------------------
1 | library constants;
2 |
3 | // Onboarding Screens
4 | const String app_name = "APP NAME";
5 |
6 | // tabs
7 | const String tab0 = "Tab 0";
8 | const String tab1 = "Tab 1";
9 | const String tab2 = "Tab 2";
10 | const String tab3 = "Tab 3";
11 |
12 | //Screen 1
13 | const String screen_util = "Screen";
14 |
15 | //home
16 | const String app_bar_title = 'Book store';
17 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/lib/src/utils/app_state_notifier.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class AppStateNotifier extends ChangeNotifier {
4 | bool isDarkMode = false;
5 |
6 | void updateTheme(bool isDarkMode) {
7 | this.isDarkMode = isDarkMode;
8 | notifyListeners();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/linux/.gitignore:
--------------------------------------------------------------------------------
1 | flutter/ephemeral
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/linux/flutter/generated_plugin_registrant.cc:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #include "generated_plugin_registrant.h"
8 |
9 |
10 | void fl_register_plugins(FlPluginRegistry* registry) {
11 | }
12 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/linux/flutter/generated_plugin_registrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #ifndef GENERATED_PLUGIN_REGISTRANT_
8 | #define GENERATED_PLUGIN_REGISTRANT_
9 |
10 | #include
11 |
12 | // Registers Flutter plugins.
13 | void fl_register_plugins(FlPluginRegistry* registry);
14 |
15 | #endif // GENERATED_PLUGIN_REGISTRANT_
16 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/linux/main.cc:
--------------------------------------------------------------------------------
1 | #include "my_application.h"
2 |
3 | int main(int argc, char** argv) {
4 | g_autoptr(MyApplication) app = my_application_new();
5 | return g_application_run(G_APPLICATION(app), argc, argv);
6 | }
7 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/linux/my_application.h:
--------------------------------------------------------------------------------
1 | #ifndef FLUTTER_MY_APPLICATION_H_
2 | #define FLUTTER_MY_APPLICATION_H_
3 |
4 | #include
5 |
6 | G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION,
7 | GtkApplication)
8 |
9 | /**
10 | * my_application_new:
11 | *
12 | * Creates a new Flutter-based application.
13 | *
14 | * Returns: a new #MyApplication.
15 | */
16 | MyApplication* my_application_new();
17 |
18 | #endif // FLUTTER_MY_APPLICATION_H_
19 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/.gitignore:
--------------------------------------------------------------------------------
1 | # Flutter-related
2 | **/Flutter/ephemeral/
3 | **/Pods/
4 |
5 | # Xcode-related
6 | **/dgph
7 | **/xcuserdata/
8 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Flutter/Flutter-Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "ephemeral/Flutter-Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Flutter/Flutter-Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "ephemeral/Flutter-Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | @NSApplicationMain
5 | class AppDelegate: FlutterAppDelegate {
6 | override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
7 | return true
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Configs/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Debug.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Configs/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Release.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/DebugProfile.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.cs.allow-jit
8 |
9 | com.apple.security.network.server
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/MainFlutterWindow.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | class MainFlutterWindow: NSWindow {
5 | override func awakeFromNib() {
6 | let flutterViewController = FlutterViewController.init()
7 | let windowFrame = self.frame
8 | self.contentViewController = flutterViewController
9 | self.setFrame(windowFrame, display: true)
10 |
11 | RegisterGeneratedPlugins(registry: flutterViewController)
12 |
13 | super.awakeFromNib()
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/macos/Runner/Release.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/web/favicon.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/windows/.gitignore:
--------------------------------------------------------------------------------
1 | flutter/ephemeral/
2 |
3 | # Visual Studio user-specific files.
4 | *.suo
5 | *.user
6 | *.userosscache
7 | *.sln.docstates
8 |
9 | # Visual Studio build-related files.
10 | x64/
11 | x86/
12 |
13 | # Visual Studio cache files
14 | # files ending in .cache can be ignored
15 | *.[Cc]ache
16 | # but keep track of directories ending in .cache
17 | !*.[Cc]ache/
18 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/windows/flutter/generated_plugin_registrant.cc:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #include "generated_plugin_registrant.h"
8 |
9 | #include
10 |
11 | void RegisterPlugins(flutter::PluginRegistry* registry) {
12 | ConnectivityPlusWindowsPluginRegisterWithRegistrar(
13 | registry->GetRegistrarForPlugin("ConnectivityPlusWindowsPlugin"));
14 | }
15 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/windows/flutter/generated_plugin_registrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #ifndef GENERATED_PLUGIN_REGISTRANT_
8 | #define GENERATED_PLUGIN_REGISTRANT_
9 |
10 | #include
11 |
12 | // Registers Flutter plugins.
13 | void RegisterPlugins(flutter::PluginRegistry* registry);
14 |
15 | #endif // GENERATED_PLUGIN_REGISTRANT_
16 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/windows/runner/resource.h:
--------------------------------------------------------------------------------
1 | //{{NO_DEPENDENCIES}}
2 | // Microsoft Visual C++ generated include file.
3 | // Used by Runner.rc
4 | //
5 | #define IDI_APP_ICON 101
6 |
7 | // Next default values for new objects
8 | //
9 | #ifdef APSTUDIO_INVOKED
10 | #ifndef APSTUDIO_READONLY_SYMBOLS
11 | #define _APS_NEXT_RESOURCE_VALUE 102
12 | #define _APS_NEXT_COMMAND_VALUE 40001
13 | #define _APS_NEXT_CONTROL_VALUE 1001
14 | #define _APS_NEXT_SYMED_VALUE 101
15 | #endif
16 | #endif
17 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/app/windows/runner/resources/app_icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/app/windows/runner/resources/app_icon.ico
--------------------------------------------------------------------------------
/examples/book-store-firebase/book_store.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/book-store-firebase/book_store.gif
--------------------------------------------------------------------------------
/examples/book-store-firebase/clean_project.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | cd api_sdk
4 | echo "+++++API SDK pub clean+++++"
5 | flutter clean
6 | echo "+++++API SDK done+++++"
7 |
8 |
9 | cd ../shared
10 | echo "+++++Shared pub clean+++++"
11 | flutter clean
12 | echo "+++++Shared done+++++"
13 |
14 | cd ../app
15 | echo "+++++Main app pub clean+++++"
16 | flutter clean
17 | echo "+++++Cleaning done+++++"
--------------------------------------------------------------------------------
/examples/book-store-firebase/shared/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 8874f21e79d7ec66d0457c7ab338348e31b17f1d
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/shared/lib/modules/authentication/auth.dart:
--------------------------------------------------------------------------------
1 | export 'package:shared/modules/authentication/bloc/authentication/authentication_bloc_public.dart';
2 | export 'package:shared/modules/authentication/resources/authentication_repository.dart';
3 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/shared/lib/modules/authentication/bloc/authentication/authentication_bloc_public.dart:
--------------------------------------------------------------------------------
1 | export 'package:shared/modules/authentication/bloc/authentication/authentication_bloc.dart';
2 | export 'package:shared/modules/authentication/bloc/authentication/authentication_event.dart';
3 | export 'package:shared/modules/authentication/bloc/authentication/authentication_state.dart';
4 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/shared/lib/modules/authentication/bloc/bloc_controller.dart:
--------------------------------------------------------------------------------
1 | import 'package:shared/main.dart';
2 |
3 | class AuthenticationBlocController {
4 | AuthenticationBlocController._();
5 | static AuthenticationBlocController _instance =
6 | AuthenticationBlocController._();
7 | factory AuthenticationBlocController() => _instance;
8 |
9 | // ignore: close_sinks
10 | AuthenticationBloc authenticationBloc = AuthenticationBloc();
11 | }
12 |
--------------------------------------------------------------------------------
/examples/book-store-firebase/shared/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | void main() {}
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/api_sdk/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 8874f21e79d7ec66d0457c7ab338348e31b17f1d
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/examples/github-repository-list/api_sdk/lib/graphql_method/graphql_operation/mutations/add_star.dart:
--------------------------------------------------------------------------------
1 | const String addStar = r'''
2 | mutation AddStar($starrableId: ID!) {
3 | action: addStar(input: {starrableId: $starrableId}) {
4 | starrable {
5 | viewerHasStarred
6 | }
7 | }
8 | }
9 | ''';
10 |
--------------------------------------------------------------------------------
/examples/github-repository-list/api_sdk/lib/graphql_method/graphql_operation/mutations/mutations.dart:
--------------------------------------------------------------------------------
1 | export './add_star.dart';
2 | export './remove_star.dart';
3 |
--------------------------------------------------------------------------------
/examples/github-repository-list/api_sdk/lib/graphql_method/graphql_operation/mutations/remove_star.dart:
--------------------------------------------------------------------------------
1 | const String removeStar = r'''
2 | mutation RemoveStar($starrableId: ID!) {
3 | action: removeStar(input: {starrableId: $starrableId}) {
4 | starrable {
5 | viewerHasStarred
6 | }
7 | }
8 | }
9 | ''';
10 |
--------------------------------------------------------------------------------
/examples/github-repository-list/api_sdk/lib/rest/rest_api_handler_data.dart:
--------------------------------------------------------------------------------
1 | import 'package:api_sdk/rest/api_helpers/api_base_helper.dart';
2 |
3 | class RestApiHandlerData {
4 | static ApiBaseHelper _apiBaseHelper = ApiBaseHelper();
5 | static getData(String path) async {
6 | final response = await _apiBaseHelper.get('$path');
7 | return response;
8 | }
9 |
10 | static postData(String path, dynamic body) async {
11 | final response = await _apiBaseHelper.post('$path', body);
12 | return response;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/examples/github-repository-list/api_sdk/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | void main() {}
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 7e9793dee1b85a243edd0e06cb1658e98b077561
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/kotlin/com/example/app/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.app
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
7 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
4 | def properties = new Properties()
5 |
6 | assert localPropertiesFile.exists()
7 | localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
8 |
9 | def flutterSdkPath = properties.getProperty("flutter.sdk")
10 | assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
11 | apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
12 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/assets/images/2.0x/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/assets/images/2.0x/logo.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/assets/images/3.0x/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/assets/images/3.0x/logo.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/assets/images/logo.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/examples/github-repository-list/app/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:app/src/app.dart';
2 | import 'package:app/src/utils/app_state_notifier.dart';
3 | import 'package:flutter/material.dart';
4 | import 'package:provider/provider.dart';
5 |
6 | void main() {
7 | runApp(
8 | ChangeNotifierProvider(
9 | create: (_) => AppStateNotifier(),
10 | child: App(),
11 | ),
12 | );
13 | }
14 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/lib/src/config/image_constants.dart:
--------------------------------------------------------------------------------
1 | class AllImages {
2 | AllImages._();
3 | static AllImages _instance = AllImages._();
4 | factory AllImages() => _instance;
5 |
6 | String image = 'assets/image';
7 | String logo = 'assets/images/logo.png';
8 | String kDefaultImage =
9 | 'https://cdn.pixabay.com/photo/2016/08/08/09/17/avatar-1577909_1280.png';
10 | }
11 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/lib/src/config/string_constants.dart:
--------------------------------------------------------------------------------
1 | library constants;
2 |
3 | // Onboarding Screens
4 | const String app_name = "APP NAME";
5 |
6 | // tabs
7 | const String tab0 = "Tab 0";
8 | const String tab1 = "Tab 1";
9 | const String tab2 = "Tab 2";
10 | const String tab3 = "Tab 3";
11 |
12 | //Screen 1
13 | const String screen_util = "Screen";
14 | //home
15 | const String app_bar_title = 'Your Repositories';
16 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/lib/src/utils/app_state_notifier.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class AppStateNotifier extends ChangeNotifier {
4 | bool isDarkMode = false;
5 |
6 | void updateTheme(bool isDarkMode) {
7 | this.isDarkMode = isDarkMode;
8 | notifyListeners();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/linux/.gitignore:
--------------------------------------------------------------------------------
1 | flutter/ephemeral
2 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/linux/flutter/generated_plugin_registrant.cc:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #include "generated_plugin_registrant.h"
8 |
9 |
10 | void fl_register_plugins(FlPluginRegistry* registry) {
11 | }
12 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/linux/flutter/generated_plugin_registrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #ifndef GENERATED_PLUGIN_REGISTRANT_
8 | #define GENERATED_PLUGIN_REGISTRANT_
9 |
10 | #include
11 |
12 | // Registers Flutter plugins.
13 | void fl_register_plugins(FlPluginRegistry* registry);
14 |
15 | #endif // GENERATED_PLUGIN_REGISTRANT_
16 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/linux/main.cc:
--------------------------------------------------------------------------------
1 | #include "my_application.h"
2 |
3 | int main(int argc, char** argv) {
4 | g_autoptr(MyApplication) app = my_application_new();
5 | return g_application_run(G_APPLICATION(app), argc, argv);
6 | }
7 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/linux/my_application.h:
--------------------------------------------------------------------------------
1 | #ifndef FLUTTER_MY_APPLICATION_H_
2 | #define FLUTTER_MY_APPLICATION_H_
3 |
4 | #include
5 |
6 | G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION,
7 | GtkApplication)
8 |
9 | /**
10 | * my_application_new:
11 | *
12 | * Creates a new Flutter-based application.
13 | *
14 | * Returns: a new #MyApplication.
15 | */
16 | MyApplication* my_application_new();
17 |
18 | #endif // FLUTTER_MY_APPLICATION_H_
19 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/.gitignore:
--------------------------------------------------------------------------------
1 | # Flutter-related
2 | **/Flutter/ephemeral/
3 | **/Pods/
4 |
5 | # Xcode-related
6 | **/dgph
7 | **/xcuserdata/
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Flutter/Flutter-Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "ephemeral/Flutter-Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Flutter/Flutter-Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "ephemeral/Flutter-Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | @NSApplicationMain
5 | class AppDelegate: FlutterAppDelegate {
6 | override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
7 | return true
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Configs/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Debug.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Configs/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Release.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/DebugProfile.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.cs.allow-jit
8 |
9 | com.apple.security.network.server
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/MainFlutterWindow.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | class MainFlutterWindow: NSWindow {
5 | override func awakeFromNib() {
6 | let flutterViewController = FlutterViewController.init()
7 | let windowFrame = self.frame
8 | self.contentViewController = flutterViewController
9 | self.setFrame(windowFrame, display: true)
10 |
11 | RegisterGeneratedPlugins(registry: flutterViewController)
12 |
13 | super.awakeFromNib()
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/macos/Runner/Release.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/web/favicon.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/examples/github-repository-list/app/windows/.gitignore:
--------------------------------------------------------------------------------
1 | flutter/ephemeral/
2 |
3 | # Visual Studio user-specific files.
4 | *.suo
5 | *.user
6 | *.userosscache
7 | *.sln.docstates
8 |
9 | # Visual Studio build-related files.
10 | x64/
11 | x86/
12 |
13 | # Visual Studio cache files
14 | # files ending in .cache can be ignored
15 | *.[Cc]ache
16 | # but keep track of directories ending in .cache
17 | !*.[Cc]ache/
18 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/windows/flutter/generated_plugin_registrant.cc:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #include "generated_plugin_registrant.h"
8 |
9 | #include
10 |
11 | void RegisterPlugins(flutter::PluginRegistry* registry) {
12 | ConnectivityPlusWindowsPluginRegisterWithRegistrar(
13 | registry->GetRegistrarForPlugin("ConnectivityPlusWindowsPlugin"));
14 | }
15 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/windows/flutter/generated_plugin_registrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #ifndef GENERATED_PLUGIN_REGISTRANT_
8 | #define GENERATED_PLUGIN_REGISTRANT_
9 |
10 | #include
11 |
12 | // Registers Flutter plugins.
13 | void RegisterPlugins(flutter::PluginRegistry* registry);
14 |
15 | #endif // GENERATED_PLUGIN_REGISTRANT_
16 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/windows/runner/resource.h:
--------------------------------------------------------------------------------
1 | //{{NO_DEPENDENCIES}}
2 | // Microsoft Visual C++ generated include file.
3 | // Used by Runner.rc
4 | //
5 | #define IDI_APP_ICON 101
6 |
7 | // Next default values for new objects
8 | //
9 | #ifdef APSTUDIO_INVOKED
10 | #ifndef APSTUDIO_READONLY_SYMBOLS
11 | #define _APS_NEXT_RESOURCE_VALUE 102
12 | #define _APS_NEXT_COMMAND_VALUE 40001
13 | #define _APS_NEXT_CONTROL_VALUE 1001
14 | #define _APS_NEXT_SYMED_VALUE 101
15 | #endif
16 | #endif
17 |
--------------------------------------------------------------------------------
/examples/github-repository-list/app/windows/runner/resources/app_icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/app/windows/runner/resources/app_icon.ico
--------------------------------------------------------------------------------
/examples/github-repository-list/clean_project.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | cd api_sdk
4 | echo "+++++API SDK pub clean+++++"
5 | flutter clean
6 | echo "+++++API SDK done+++++"
7 |
8 |
9 | cd ../shared
10 | echo "+++++Shared pub clean+++++"
11 | flutter clean
12 | echo "+++++Shared done+++++"
13 |
14 | cd ../app
15 | echo "+++++Main app pub clean+++++"
16 | flutter clean
17 | echo "+++++Cleaning done+++++"
--------------------------------------------------------------------------------
/examples/github-repository-list/github_repo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeekyAnts/flutter-starter/e1ecfa12fedb25061d3719df76c493b44040ca11/examples/github-repository-list/github_repo.gif
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 8874f21e79d7ec66d0457c7ab338348e31b17f1d
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:shared_preferences/shared_preferences.dart';
2 |
3 | export 'package:shared/modules/authentication/auth.dart';
4 | export 'package:shared/modules/authentication/bloc/bloc_controller.dart';
5 | export 'package:shared/modules/github_repo/bloc/github_repo_bloc_controller.dart';
6 |
7 | Future prefs = SharedPreferences.getInstance();
8 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/auth.dart:
--------------------------------------------------------------------------------
1 | export 'package:shared/modules/authentication/bloc/authentication/authentication_bloc_public.dart';
2 | export 'package:shared/modules/authentication/models/auth_models_public.dart';
3 | export 'package:shared/modules/authentication/models/firebase_user.dart';
4 | export 'package:shared/modules/authentication/resources/authentication_repository.dart';
5 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/bloc/authentication/authentication_bloc_public.dart:
--------------------------------------------------------------------------------
1 | export 'package:shared/modules/authentication/bloc/authentication/authentication_bloc.dart';
2 | export 'package:shared/modules/authentication/bloc/authentication/authentication_event.dart';
3 | export 'package:shared/modules/authentication/bloc/authentication/authentication_state.dart';
4 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/bloc/bloc_controller.dart:
--------------------------------------------------------------------------------
1 | import 'package:shared/main.dart';
2 |
3 | class AuthenticationBlocController {
4 | AuthenticationBlocController._();
5 | static AuthenticationBlocController _instance =
6 | AuthenticationBlocController._();
7 | factory AuthenticationBlocController() => _instance;
8 |
9 | // ignore: close_sinks
10 | AuthenticationBloc authenticationBloc = AuthenticationBloc();
11 | }
12 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/models/auth_models_public.dart:
--------------------------------------------------------------------------------
1 | export 'package:shared/modules/authentication/models/token.dart';
2 | export 'package:shared/modules/authentication/models/user.dart';
3 | export 'package:shared/modules/authentication/models/user_data.dart';
4 | export 'package:shared/modules/authentication/models/current_user_data.dart';
5 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/models/firebase_user.dart:
--------------------------------------------------------------------------------
1 | class UserFromFirebaseUser {
2 | final String uid;
3 | final String email;
4 | final String token;
5 | final String avatar;
6 |
7 | UserFromFirebaseUser({
8 | this.uid,
9 | this.email,
10 | this.token,
11 | this.avatar =
12 | "https://i.pinimg.com/736x/89/90/48/899048ab0cc455154006fdb9676964b3.jpg",
13 | });
14 | }
15 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/models/token.dart:
--------------------------------------------------------------------------------
1 | class Token {
2 | String token;
3 |
4 | Token({this.token});
5 |
6 | Token.fromJson(Map json) {
7 | token = json['token'];
8 | }
9 |
10 | Map toJson() {
11 | final Map data = new Map();
12 | data['token'] = this.token;
13 | return data;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/models/user.dart:
--------------------------------------------------------------------------------
1 | import 'package:meta/meta.dart';
2 |
3 | class MyUser {
4 | final String name;
5 | final String email;
6 |
7 | MyUser({@required this.name, @required this.email});
8 |
9 | @override
10 | String toString() => 'User { name: $name, email: $email}';
11 | }
12 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/authentication/models/user_data.dart:
--------------------------------------------------------------------------------
1 | class UserData {
2 | int id;
3 | String token;
4 |
5 | UserData({this.id, this.token});
6 |
7 | UserData.fromJson(Map json) {
8 | id = json['id'];
9 | token = json['token'];
10 | }
11 |
12 | Map toJson() {
13 | final Map data = new Map();
14 | data['id'] = this.id;
15 | data['token'] = this.token;
16 | return data;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/examples/github-repository-list/shared/lib/modules/github_repo/bloc/github_repo_bloc/github_repo_event.dart:
--------------------------------------------------------------------------------
1 | import 'package:equatable/equatable.dart';
2 |
3 | abstract class GithubRepoEvent extends Equatable {
4 | const GithubRepoEvent();
5 |
6 | @override
7 | List