mirror of
https://github.com/londonappbrewery/Flutter-Course-Resources/
synced 2024-11-14 21:34:56 +00:00
229 lines
15 KiB
Markdown
229 lines
15 KiB
Markdown
# Flutter-Course-Resources
|
|
|
|
## Section 1: Introduction to Cross-Platform Development with Flutter and Dart
|
|
|
|
* [Download the Course Syllabus](https://drive.google.com/uc?export=download&id=1itL9AXx7Z-RxFAjSLLhsTeTFZYrkfweR)
|
|
* [Cornell Note Taking System - App Brewery Template](https://drive.google.com/uc?export=download&id=1RfRLujREfLx1PSpw9bubNDsvRuknJ5ek)
|
|
|
|
|
|
## Section 2: Setting Up for Flutter Development
|
|
|
|
* [Getting Started: Installing Flutter](https://flutter.dev/docs/get-started/install)
|
|
* [Git for Windows](https://git-scm.com/download/win)
|
|
* [Git for Mac](https://desktop.github.com)
|
|
* [Install Android Studio](https://developer.android.com/studio/)
|
|
* [iOS Setup Instructions](https://flutter.dev/docs/get-started/install/macos#ios-setup)
|
|
|
|
|
|
## Section 3: I Am Rich - How to Create Flutter Apps from Scratch
|
|
|
|
* [Material Design](https://material.io/)
|
|
* [Scaffold Documentation](https://docs.flutter.io/flutter/material/Scaffold-class.html)
|
|
* [AppBar Documentation](https://docs.flutter.io/flutter/material/AppBar-class.html)
|
|
* [Material Design Colour System](https://material.io/design/color/the-color-system.html)
|
|
* [Image Widget Documentation](https://docs.flutter.io/flutter/widgets/Image-class.html)
|
|
* [Make Flowcharts with Draw.io](https://www.draw.io/)
|
|
* [Learn More About the Pubspec File](https://www.dartlang.org/tools/pub/pubspec)
|
|
* [Adding Assets](https://flutter.dev/docs/development/ui/assets-and-images)
|
|
* [Generating App Icons with AppIcon.co](https://appicon.co/)
|
|
|
|
## Section 4: Running Your App on a Physical Device
|
|
|
|
* [Flutter Documentation on Deploying to Physical iOS Devices](https://flutter.dev/docs/get-started/install/macos#deploy-to-ios-devices)
|
|
* [Homebrew for MacOS](https://brew.sh/)
|
|
* [Troubleshooting: Physical iOS Device Testing](https://blog.londonappbrewery.com/troubleshooting-ios-device-testing-for-flutter-38c5da239e62)
|
|
* [Troubleshooting: Physical Android Device Testing](https://blog.londonappbrewery.com/troubleshooting-android-device-testing-on-windows-a2b5d779df08)
|
|
|
|
## Section 5: I Am Poor - App Challenge
|
|
|
|
* [Icons8](https://icons8.com/)
|
|
* [Vecteezy](https://www.vecteezy.com/)
|
|
* [Canva](https://www.canva.com/)
|
|
|
|
## Section 6: MiCard - How to Build Beautiful UIs with Flutter Widgets
|
|
|
|
* [MiCard Stub Project](https://github.com/londonappbrewery/mi_card_flutter)
|
|
* [Widgets Catalogue](https://flutter.dev/docs/development/ui/widgets)
|
|
* [Container Documentation](https://docs.flutter.io/flutter/widgets/Container-class.html)
|
|
* [Column Documentation](https://docs.flutter.io/flutter/widgets/Column-class.html)
|
|
* [Row Documentation](https://docs.flutter.io/flutter/widgets/Row-class.html)
|
|
* [Tomek's Flutter Layout Cheat Sheet](https://medium.com/flutter-community/flutter-layout-cheat-sheet-5363348d037e)
|
|
* [Download fancy fonts from fonts.google.com](https://fonts.google.com/)
|
|
* [How to add fonts to the pubspec.yaml file](https://flutter.dev/docs/cookbook/design/package-fonts)
|
|
* [The Icons Class](https://docs.flutter.io/flutter/material/Icons-class.html)
|
|
* [Material Design Icons](https://material.io/tools/icons/?style=baseline)
|
|
* [Icons on materialpalette.com](https://www.materialpalette.com/icons)
|
|
* [Card Class Documentation](https://docs.flutter.io/flutter/material/Card-class.html)
|
|
* [The Padding Class](https://docs.flutter.io/flutter/widgets/Padding-class.html)
|
|
* [The ListTile Class](https://docs.flutter.io/flutter/material/ListTile-class.html)
|
|
* [Flutter's Horizontal Rule - The Divider](https://docs.flutter.io/flutter/material/Divider-class.html)
|
|
* [MiCard Completed Project](https://github.com/londonappbrewery/MiCard-Completed)
|
|
|
|
## Section 7: Dicee - Building Apps with State
|
|
|
|
* [Dicee Stub Project](https://github.com/londonappbrewery/dicee-flutter)
|
|
* [Expanded Class](https://docs.flutter.io/flutter/widgets/Expanded-class.html)
|
|
* [Image Widget Documentation](https://docs.flutter.io/flutter/widgets/Image-class.html)
|
|
* [FlatButton Documentation](https://docs.flutter.io/flutter/material/FlatButton-class.html)
|
|
* [Run code snippets on DartPad](https://dartpad.dartlang.org/)
|
|
* [Dart Math Library](https://api.dartlang.org/stable/2.2.0/dart-math/dart-math-library.html)
|
|
* [Random Class](https://api.dartlang.org/stable/2.2.0/dart-math/Random-class.html)
|
|
* [Dicee Completed Project](https://github.com/londonappbrewery/Dicee-Flutter-Completed)
|
|
|
|
## Section 8: Boss Level Challenge 1 - Magic 8 Ball
|
|
|
|
* [Magic 8 Ball Stub](https://github.com/londonappbrewery/magic-8-ball-flutter)
|
|
|
|
## Section 9: Xylophone - Using Flutter and Dart Packages to Speed Up Development
|
|
|
|
* [XyloPhone Stub Project](https://github.com/londonappbrewery/xylophone-flutter)
|
|
* [Flutter Packages](https://pub.dartlang.org/flutter)
|
|
* [Guide to Using Flutter Packages](https://flutter.dev/docs/development/packages-and-plugins/using-packages)
|
|
* [Luan Nico's Audioplayers Package](https://pub.dartlang.org/packages/audioplayers)
|
|
* [AudioCache Documentation](https://github.com/bluefireteam/audioplayers/blob/master/packages/audioplayers/doc/audio_cache.md)
|
|
* [DartPad Functions Exercise](https://dartpad.dartlang.org/4bf7549c820d1adb4be8673e92820e43)
|
|
* [Xylophone Completed Project](https://github.com/londonappbrewery/Xylophone-Flutter-Completed)
|
|
|
|
## Section 10: Quizzler - Modularising & Organising Flutter Code
|
|
|
|
* [Quizzler Stub Project](https://github.com/londonappbrewery/quizzler-flutter)
|
|
* [List Gist for DartPad List Practice](https://gist.github.com/angelabauer/f9db1b64cf51623d42b1ac1722bd016c)
|
|
* [Dart List Language Tour](https://www.dartlang.org/guides/libraries/library-tour#collections)
|
|
* [RFlutter Alert Package](https://pub.dartlang.org/packages/rflutter_alert)
|
|
* [Dart Constructors](https://www.dartlang.org/guides/language/language-tour#constructors)
|
|
* [Quizzler Starting File for Challenge](https://github.com/londonappbrewery/quizzler-flutter-challenge-starting)
|
|
* [Quizzler Solution & Completed Project](https://github.com/londonappbrewery/quizzler-flutter-challenge-final)
|
|
|
|
## Section 11: Boss Level Challenge 2 - Destini
|
|
|
|
* [Destini Stub](https://github.com/londonappbrewery/destini-challenge-starting)
|
|
* [Destini Solution & Completed Project](https://github.com/londonappbrewery/destini-challenge-completed/)
|
|
|
|
## Section 12: BMI Calculator - Building Flutter UIs for Intermediates
|
|
|
|
* [BMI Stub Project](https://github.com/londonappbrewery/bmi-calculator-flutter)
|
|
* [Dribbble: Find Designers and Design inspiration](https://dribbble.com/)
|
|
* [Ruben Vaalt's beautiful BMI Calculator Design](https://dribbble.com/shots/4585382-Simple-BMI-Calculator)
|
|
* [Using Themes](https://flutter.dev/docs/cookbook/design/themes)
|
|
* [The Flutter Cookbook](https://flutter.dev/docs/cookbook)
|
|
* [ThemeData Class](https://api.flutter.dev//flutter/material/ThemeData-class.html)
|
|
* [Find Color HEX codes easily with the Colorzilla plugin](http://www.colorzilla.com/)
|
|
* [The Color Class](https://docs.flutter.io/flutter/dart-ui/Color-class.html)
|
|
* [How do HEX codes for with colours?](https://stackoverflow.com/questions/22239803/how-does-hexadecimal-color-work)
|
|
* [The Key Class](https://docs.flutter.io/flutter/foundation/Key-class.html)
|
|
* [When to Use Keys - Flutter Widgets 101 Ep. 4](https://www.youtube.com/watch?v=kn0EOS-ZiIc)
|
|
* [Dart Language Tour: Final and Const](https://www.dartlang.org/guides/language/language-tour#final-and-const)
|
|
* [Font Awesome Flutter Package](https://pub.dartlang.org/packages/font_awesome_flutter)
|
|
* [The GestureDetector Class](https://docs.flutter.io/flutter/widgets/GestureDetector-class.html)
|
|
* [Slider Class](https://docs.flutter.io/flutter/material/Slider-class.html)
|
|
* [FloatingActionButton Class](https://docs.flutter.io/flutter/material/FloatingActionButton-class.html)
|
|
* [ShapeBorder Class](https://docs.flutter.io/flutter/painting/ShapeBorder-class.html)
|
|
* [RawMaterialButton Class](https://docs.flutter.io/flutter/material/RawMaterialButton-class.html)
|
|
* [Navigating between Screens on Flutter](https://flutter.dev/docs/cookbook/navigation/navigation-basics)
|
|
* [LAB Navigation Demo](https://github.com/londonappbrewery/Navigation-Flutter-Demo)
|
|
* [Navigate with Named Routes](https://flutter.dev/docs/cookbook/navigation/named-routes)
|
|
* [Definition of the Body Mass Index (BMI)](https://en.wikipedia.org/wiki/Body_mass_index)
|
|
* [BMI Completed Project](https://github.com/londonappbrewery/BMI-Calculator-Completed)
|
|
|
|
## Section 13: Clima - Powering Your Flutter App with Live Weather Web Data
|
|
|
|
* [Clima Stub Project](https://github.com/londonappbrewery/Clima-Flutter)
|
|
* [Get the Location using the Geolocator Package](https://pub.dartlang.org/packages/geolocator)
|
|
* [Android X Compatilibity](https://flutter.dev/docs/development/packages-and-plugins/androidx-compatibility)
|
|
* [Starter Code Snippet for Async Await Demo](https://gist.github.com/angelabauer/c19c42b7795a185d2113f3b47263d2c0)
|
|
* [Illustrating Lifecycles with the LAB Navigation Demo](https://github.com/londonappbrewery/Navigation-Flutter-Demo)
|
|
* [Location Refactoring Challenge Instructions](https://github.com/londonappbrewery/Clima-Flutter-Location-Refactor-Challenge)
|
|
* [OpenWeatherMap APIs](https://openweathermap.org/api)
|
|
* [Fetching Data from the Internet](https://flutter.dev/docs/cookbook/networking/fetch-data)
|
|
* [The Dart http package](https://pub.dartlang.org/packages/http)
|
|
* [OpenWeatherMap Current Weather Documentation](https://openweathermap.org/current)
|
|
* [HTTP Package API Reference](https://pub.dartlang.org/documentation/http/latest/)
|
|
* [HTTP Response Class Documentation](https://pub.dartlang.org/documentation/http/latest/http/Response-class.html)
|
|
* [List of HTTP Status Codes](https://www.restapitutorial.com/httpstatuscodes.html)
|
|
* [Chrome Plugin for Formatting and Viewing JSON](https://chrome.google.com/webstore/detail/json-viewer-awesome/iemadiahhbebdklepanmkjenfdebfpfe?hl=en)
|
|
* [JSON Mate: Formatting and Viewing JSON without a plugin](http://jsonmate.com/)
|
|
* [Loading Indicators from the Flutter Spinkit](https://pub.dartlang.org/packages/flutter_spinkit)
|
|
* [The State Class](https://docs.flutter.io/flutter/widgets/State-class.html)
|
|
* [OpenWeatherMap Weather Conditions](https://openweathermap.org/weather-conditions)
|
|
* [Create and Style a TextField](https://flutter.dev/docs/cookbook/forms/text-input)
|
|
* [The TextField Class](https://docs.flutter.io/flutter/material/TextField-class.html)
|
|
* [Clima Completed Project](https://github.com/londonappbrewery/Clima-Flutter-Completed)
|
|
|
|
## Section 14: Boss Level Challenge 3 - Bitcoin Ticker (a.k.a. Am I Rich?)
|
|
|
|
* [Bitcoin Ticker Stub Project](https://github.com/londonappbrewery/bitcoin-ticker-flutter)
|
|
* [Flutter DropdownButton](https://docs.flutter.io/flutter/material/DropdownButton-class.html)
|
|
* [Dropdown Menu Design](https://material.io/design/components/menus.html#dropdown-menu)
|
|
* [99 Bottles of Beer Programming Language Collection](http://www.99-bottles-of-beer.net/)
|
|
* [DartPad For in Loop Mini Challenge](https://dartpad.dartlang.org/88fd2dd04c921892515bcd0567ef1636)
|
|
* [Cupertino (iOS) Style Widgets](https://flutter.dev/docs/development/ui/widgets/cupertino)
|
|
* [CupertinoPicker Class Documentation](https://docs.flutter.io/flutter/cupertino/CupertinoPicker-class.html)
|
|
* [Register for a coinapi.io API key](https://www.coinapi.io/Pricing)
|
|
* [Coin API Docs](https://docs.coinapi.io/)
|
|
* [Bronze Challenge Start Code](https://github.com/londonappbrewery/bitcoin-flutter-challenge-start)
|
|
* [Silver Challenge Starter Code](https://github.com/londonappbrewery/bitcoin-flutter-silver-start)
|
|
* [Gold Challenge Starter Code](https://github.com/londonappbrewery/bitcoin-flutter-gold-start)
|
|
* [Bitcoin Completed Project](https://github.com/londonappbrewery/bitcoin-flutter-final)
|
|
|
|
## Section 15: Flash Chat - Flutter x Firebase Cloud Firestore
|
|
|
|
* [Flash Chat Stub Project](https://github.com/londonappbrewery/flash-chat-flutter)
|
|
* [Dart Language Keywords](https://www.dartlang.org/guides/language/language-tour#keywords)
|
|
* [Hero Animations](https://flutter.dev/docs/development/ui/animations/hero-animations)
|
|
* [Curves Class Documentation](https://docs.flutter.io/flutter/animation/Curves-class.html)
|
|
* [CurvedAnimation Class Documentation](https://docs.flutter.io/flutter/animation/CurvedAnimation-class.html)
|
|
* [Tween Animation Class](https://docs.flutter.io/flutter/animation/Tween-class.html)
|
|
* [Dart Language Tour: Mixins](https://www.dartlang.org/guides/language/language-tour#adding-features-to-a-class-mixins)
|
|
* [Pre-packaged Animations: Flutter Sequence Animation](https://pub.dartlang.org/packages/flutter_sequence_animation)
|
|
* [Pre-packaged Animations: Rubber](https://pub.dartlang.org/packages/rubber)
|
|
* [Pre-packaged Animations: Sprung](https://pub.dartlang.org/packages/sprung)
|
|
* [Pre-packaged Animations: Animated Text Kit](https://pub.dartlang.org/packages/animated_text_kit)
|
|
* [Refactoring Challenge Instructions](https://github.com/londonappbrewery/Flash-Chat-Flutter-Refactor-Challenge)
|
|
* [Create your Firebase Account Here](https://firebase.google.com/)
|
|
* [Firebase Core Package for Flutter](https://pub.dartlang.org/packages/firebase_core)
|
|
* [Firebase Auth Package for Flutter](https://pub.dartlang.org/packages/firebase_auth)
|
|
* [Cloud Firestore Package for Flutter](https://pub.dartlang.org/packages/cloud_firestore)
|
|
* [Troubleshooting: Firebase & Flutter: Common Errors](https://blog.londonappbrewery.com/troubleshooting-firebase-x-flutter-a974b2645689)
|
|
* [Showing a Spinner: The Modal Progress HUD](https://pub.dartlang.org/packages/modal_progress_hud)
|
|
* [Firebase Documentation](https://firebase.google.com/docs/)
|
|
* [Kitsune-kun visualising Dart Streams and Nagashi Sōmen](https://vimeo.com/47912950)
|
|
* [StreamBuilder Class Documentation](https://docs.flutter.io/flutter/widgets/StreamBuilder-class.html)
|
|
* [AsyncSnapshot Class Documentation](https://docs.flutter.io/flutter/widgets/AsyncSnapshot-class.html)
|
|
* [ListView Class Documentation](https://docs.flutter.io/flutter/widgets/ListView-class.html)
|
|
* [Guide to the Firestore Security Rules](https://firebase.google.com/docs/firestore/security/get-started)
|
|
* [Flash Chat Completed Project](https://github.com/londonappbrewery/Flash-Chat-Flutter-Complete)
|
|
|
|
## Section 16: Flutter State Management
|
|
|
|
* [State Management Example](https://github.com/londonappbrewery/state_management-flutter.git)
|
|
* [Todoey Design Guide](https://drive.google.com/uc?export=download&id=1Kz6y_DZA6slg-56kktB4Svkk1XNY8ACX)
|
|
* [Flutter BottomSheet Class](https://api.flutter.dev/flutter/material/BottomSheet-class.html)
|
|
* [showModalBottomSheet() function](https://api.flutter.dev/flutter/material/showModalBottomSheet.html)
|
|
* [WidgetBuilder function](https://api.flutter.dev/flutter/widgets/WidgetBuilder.html)
|
|
* [The ListView Class](https://api.flutter.dev/flutter/widgets/ListView-class.html)
|
|
* [Flutter State Management at Google I/O 2019](https://youtu.be/d_m5csmrf7I)
|
|
* [The Provider Package](https://pub.dev/packages/provider)
|
|
* [The InheritedWidget Class](https://api.flutter.dev/flutter/widgets/InheritedWidget-class.html)
|
|
* [Todoey Completed Project](https://github.com/londonappbrewery/todoey-flutter)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|