mirror of
https://github.com/nisrulz/flutter-examples.git
synced 2026-08-25 01:05:36 +00:00
chore: modernize Flutter examples — null safety, latest APIs, Kotlin DSL Gradle (#148)
* updates * Update Gradle wrapper script to fetch latest version online and allow --version override * chore(analytics_integration): migrate Gradle build scripts to Kotlin DSL Convert Groovy build files to Kotlin DSL and bump Gradle wrapper. * chore(animation_example): migrate Gradle build scripts to Kotlin DSL Convert Groovy build files to Kotlin DSL. * chore(biometrics): migrate Gradle build scripts to Kotlin DSL Convert Groovy build files to Kotlin DSL. * chore(bmi_calculator): test test body * chore(bottom_sheet): test test body * chore(custom_home_drawer): migrate Gradle build scripts to Kotlin DSL Convert Groovy build files to Kotlin DSL and bump Gradle wrapper. * chore(covid19_mobile_app): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(dropdown_button): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(enabling_splash_screen): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(expense_planner): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(firebase_crash_reporting): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(firebase_google_authentication): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(flutter_date_pickers-master): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(getx_counter_app): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(google_signin): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(grid_layout): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(handling_routes): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(image_editor): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(image_from_network): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(infinite_list): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(load_local_image): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(load_local_json): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(lunch_app): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(navigation_drawer): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(news_memes_app): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(persist_key_value): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(push_notifications): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(save_data_locally_with_sqlite): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(scan_qr_code): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(simple_material_app): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(sliver_app_bar_example): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(stateful_widget): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(stateless_widgets): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(statless_counter_app): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(tic_tac_toe): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(tip_calculator): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(todo_list_using_provider): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(unit_testing): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(using_alert_dialog): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_bottom_nav_bar): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_custom_fonts): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_edittext): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_expansionpanel): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(using_firebase_db): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(using_gradient): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_http_get): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_interactiveviewer): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(using_listview): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_listwheelscrollview): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(using_platform_adaptive): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore(using_snackbar): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_stepper): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_tabs): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(using_theme): remove legacy nested android project Delete the redundant nested android/ project directory from the old layout. Also update pubspec.yaml SDK constraints and dependencies. * chore(view_pdf_file): migrate Gradle build scripts to Kotlin DSL Convert Groovy build.gradle/settings.gradle to Kotlin DSL and bump Gradle wrapper. * chore: ignore .trash directory * chore: remove IDE configs and PR template * chore(infinite_list): remove legacy nested android project * refactor(infinite_list): migrate theme to ColorScheme API * refactor(using_theme): migrate to ColorScheme API * refactor(analytics_integration): migrate Firebase Analytics API * refactor(firebase_google_authentication): migrate Google Sign-In API * refactor(covid19_mobile_app): migrate theme and buttons to current API * refactor(covid19_mobile_app): replace bezier_chart with fl_chart * refactor(image_editor): migrate image plugins and button styles * refactor(scan_qr_code): migrate mobile_scanner API * refactor(lunch_app): migrate to null safety * refactor(todo_list_using_provider): migrate to null safety * refactor(unit_testing): migrate to null safety * refactor(using_firebase_db): migrate Firebase Database API * fix(update_gradle_wrapper): edit gradle-wrapper.properties directly * refactor(push_notifications): migrate Firebase Messaging API * refactor(using_http_get): migrate to null safety * refactor(using_listview): migrate to null safety * refactor(using_listwheelscrollview): migrate to null safety * refactor(view_pdf_file): migrate to null safety * refactor(bottom_sheet): migrate to null safety * refactor(stateless_widgets): migrate to null safety * chore: regenerate Gradle wrapper * refactor: move maintenance scripts to Makefile * chore: remove generated and IDE files * fix: migrate image_editor to current plugins * fix: migrate news_memes_app share to share_plus * fix: migrate view_pdf_file to syncfusion pdf viewer * fix: update deprecated APIs * style: remove commented-out code
This commit is contained in:
committed by
GitHub
parent
80fe9bed92
commit
8745f7cf5a
119
README.md
119
README.md
@@ -5,7 +5,7 @@
|
||||
[](https://github.com/nisrulz/flutter-examples) [](https://github.com/nisrulz/flutter-examples/fork) [](https://github.com/nisrulz/flutter-examples) [](https://github.com/nisrulz/flutter-examples)
|
||||
[](https://twitter.com/nisrulz)
|
||||
|
||||
Main repository containing all the example apps demonstrating features/functionality/integrations in [Flutter](https://flutter.io/) application development
|
||||
Example apps demonstrating features, functionality, and integrations in [Flutter](https://flutter.dev/). Each folder is a standalone app you can run as-is.
|
||||
|
||||
### Featured In
|
||||
|
||||
@@ -13,115 +13,34 @@ Main repository containing all the example apps demonstrating features/functiona
|
||||
- [Flutter Weekly #11](https://mailchi.mp/5db146a7468b/flutter-weekly-11)
|
||||
- [Awesome Flutter](https://github.com/Solido/awesome-flutter#demonstrations)
|
||||
|
||||
|
||||
Lookup Links: [[Setup Flutter](https://flutter.io/setup/)] [[Widgets Catalog](https://flutter.io/widgets/)] [[Dart Lang](https://flutter.io/bootstrap-into-dart/)]
|
||||
|
||||
<img src="stateful_widget/demo_img.gif" height="300em" /> <img src="using_bottom_nav_bar/demo_img.gif" height="300em" /> <img src="dropdown_button/demo_img.gif" height="300em" /> <img src="using_stepper/demo_img.gif" height="300em" /> <img src="using_tabs/demo_img.gif" height="300em" /><img src="bottom_sheet/demo.gif" height="300em"/><img src="sliver_app_bar_example/demo_img.gif" height="300em" /><img src="custom_home_drawer/demo_img.jpeg" height="300em" />
|
||||
|
||||
## Example apps
|
||||
## Getting started
|
||||
|
||||
1. [Custom Drawer](/custom_home_drawer)
|
||||
1. [DropDown Button](/dropdown_button)
|
||||
1. [Enable Splash Screen](/enabling_splash_screen)
|
||||
1. [Firebase Analytics Integration](/analytics_integration)
|
||||
1. [Firebase Crashlytics Integration](/firebase_crash_reporting)
|
||||
1. [Google Signin](/google_signin)
|
||||
1. [Grid Layout](/grid_layout)
|
||||
1. [Image Editor](/image_editor)
|
||||
1. [Image from Network](/image_from_network)
|
||||
1. [Infinite List](/infinite_list)
|
||||
1. [Load local image](/load_local_image)
|
||||
1. [Load local json](/load_local_json)
|
||||
1. [Navigation Drawer](/navigation_drawer)
|
||||
1. [Persist Key Value](/persist_key_value)
|
||||
1. [Push Notifications](/push_notifications)
|
||||
1. [Simple Material App](/simple_material_app)
|
||||
1. [Sliver App Bar](/sliver_app_bar_example)
|
||||
1. [Stateful Widget](/stateful_widget)
|
||||
1. [Stateless counter app](/statless_counter_app)
|
||||
1. [Stateless Widgets](/stateless_widgets)
|
||||
1. [Todo list using Provider](/todo_list_using_provider)
|
||||
1. [Unit Testing](/unit_testing)
|
||||
1. [Using Alert Dialog](/using_alert_dialog)
|
||||
1. [Using Bottom Navigation Bar](/using_bottom_nav_bar)
|
||||
1. [Using Bottom Sheet](/bottom_sheet)
|
||||
1. [Using Custom Fonts](/using_custom_fonts)
|
||||
1. [Using EditText](/using_edittext)
|
||||
1. [Using Gradient](/using_gradient)
|
||||
1. [Using HTTP GET](/using_http_get)
|
||||
1. [Using InteractiveViewer](/using_interactiveviewer)
|
||||
1. [Using Listview](/using_listview)
|
||||
1. [Using ListwheelScrollView](/using_listwheelscrollview)
|
||||
1. [Using SnackBar](/using_snackbar)
|
||||
1. [Using Stepper](/using_stepper)
|
||||
1. [Using Tabs](/using_tabs)
|
||||
1. [Using Theme](/using_theme)
|
||||
1. [View PDF File](/view_pdf_file)
|
||||
```bash
|
||||
git clone https://github.com/nisrulz/flutter-examples.git
|
||||
cd flutter-examples
|
||||
make packages
|
||||
cd <example-folder>
|
||||
flutter run
|
||||
```
|
||||
|
||||
### Complete apps with multiple features
|
||||
New to Flutter? See [Getting Started](/documentation/GETTING_STARTED.md) for full setup and run instructions.
|
||||
|
||||
1. [Covid-19 App](/covid19_mobile_app)
|
||||
1. [BMI Calculator](/bmi_calculator)
|
||||
1. [Expense Planner](/expense_planner)
|
||||
1. [Notes App](/using_firebase_db)
|
||||
1. [Tip Calculator](/tip_calculator)
|
||||
## Documentation
|
||||
|
||||
# Get packages for all flutter projects
|
||||
|
||||
- Once you have cloned this repo, navigate to the root of this repo.
|
||||
- Next run `./get_packages.sh`
|
||||
> Make sure the script is executable. If it is not, then run `chmod +x get_packages.sh` first to make it executable.
|
||||
- Done!
|
||||
|
||||
# Pull Requests
|
||||
|
||||
I welcome and encourage all pull requests. It usually will take me 24-48 hours to respond to any issue or request. Here are some basic rules to follow to ensure the timely addition of your request:
|
||||
|
||||
1. Match coding style (braces, spacing, etc.) This is best achieved using `Reformat Code` feature of Android Studio `CMD`+`Option`+`L` on Mac and `CTRL` + `ALT` + `L` on Linux + Windows .
|
||||
1. If it's a feature, bugfix, or anything please only change the code to what you specify.
|
||||
1. Please keep PR titles easy to read and descriptive of changes, this will make them easier to merge :)
|
||||
1. Pull requests _must_ be made against the `develop` branch. Any other branch (unless specified by the maintainers) will get rejected. [Here is a link to a good PR made to this repo.](https://github.com/nisrulz/flutter-examples/pull/130)
|
||||
1. Check for existing [issues](https://github.com/nisrulz/flutter-examples/issues) first, before filing an issue.
|
||||
1. **Make sure you follow the set standard as all other projects in this repo do**
|
||||
> **Make sure the package name conforms to the format: `github.nisrulz.<app_name>`**
|
||||
|
||||
## Extra
|
||||
Since the repo is pretty large now, I am sure many folks would like to download only some of the projects. To tackle that follow the steps below:
|
||||
- Install `svn` using homebrew (Mac/Linux)
|
||||
```bash
|
||||
brew install svn
|
||||
```
|
||||
- Copy the name of the example folder in this repo i.e `simple_material_app`
|
||||
- Next, replace `example_folder` in the below command:
|
||||
|
||||
```bash
|
||||
svn checkout https://github.com/nisrulz/flutter-examples/trunk/example_folder
|
||||
```
|
||||
i.e Consider `simple_material_app` is the name of the example's folder, the command becomes:
|
||||
```bash
|
||||
svn checkout https://github.com/nisrulz/flutter-examples/trunk/simple_material_app
|
||||
```
|
||||
- Done! You should have the specific example all checked out!
|
||||
- [Example Apps](/documentation/EXAMPLES.md): all examples in this repository
|
||||
- [Getting Started](/documentation/GETTING_STARTED.md): setup, run, and download a single example
|
||||
- [Maintenance](/documentation/MAINTENANCE.md): available `make` commands
|
||||
- [Contributing](/documentation/CONTRIBUTING.md): how to submit pull requests
|
||||
|
||||
## Author & support
|
||||
This project was created by [Nishant Srivastava](https://github.com/nisrulz/nisrulz.github.io#nishant-srivastava) but hopefully developed and maintained by many others. See the [the list of contributors here](https://github.com/nisrulz/flutter-examples/graphs/contributors).
|
||||
|
||||
This project was created by [Nishant Srivastava](https://github.com/nisrulz/nisrulz.github.io#nishant-srivastava) but hopefully developed and maintained by many others. See the [list of contributors here](https://github.com/nisrulz/flutter-examples/graphs/contributors).
|
||||
|
||||
If you appreciate my work, consider [buying me](https://www.paypal.me/nisrulz/5usd) a cup of :coffee: to keep me recharged :metal: [[PayPal](https://www.paypal.me/nisrulz/5usd)]
|
||||
|
||||
|
||||
License
|
||||
=======
|
||||
## License
|
||||
|
||||
Copyright 2017 Nishant Srivastava
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
This project is licensed under the [Apache License, Version 2.0](LICENSE.txt).
|
||||
|
||||
Reference in New Issue
Block a user