Skip to content

solygambas/flutter-projects

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flutter Projects

4 projects to understand Flutter basics.

# Project Description
01 Wordpair Generator A quick intro to Flutter core concepts and Dart syntax.
02 World Time A simple world clock application.
03 Brew Crew An app to collect brew preferences, using Firebase.
04 Ninja Trips A travel app to understand Flutter animations.

1) Wordpair Generator

A quick intro to Flutter core concepts and Dart syntax.

See 01-wordpair folder

Features

  • adding Dart and Flutter extensions in Visual Studio Code.
  • creating a layout with Scaffold.
  • adding a theme with ThemeData.
  • installing english_words package from pub.dev as a dependency.
  • building a custom widget.
  • displaying generated words with ListView.
  • handling favorites with setState.
  • using the navigator to display saved word pairs.

Based on Flutter Crash Course by Brad Taversy (2019).

2) World Time

A simple world clock application.

See 02-world-time folder

Features

  • creating several screens and handling routing.
  • understanding widget lifecycle.
  • writing asynchronous code with async, await and Futures.
  • working with the 'http' package to collect data from the World Time API.
  • creating a custom WorldTime class to handle API calls.
  • handling errors with try and catch blocks.
  • passing data between screens.
  • formatting time with the 'intl' package.
  • displaying a loading spinner with Flutter Spinkit.
  • using a ternary operator to handle light and dark modes.
  • choosing location with ListView.
  • updating the time.

Based on Flutter Tutorial for Beginners by Shaun Pelling - The Net Ninja (2019).

3) Brew Crew

An app to collect brew preferences, using Firebase.

See 03-brew-crew folder

Features

  • setting up Firebase in a Flutter app.
  • creating an authentication class with Firebase Auth.
  • handling anonymous sign in and sign out with a custom user model.
  • listening to auth stream with the Provider package.
  • building sign in and register forms.
  • toggling between forms.
  • registering and signing in with email and password.
  • adding a loading widget with Flutter Spinkit.
  • using Firestore database to store brew preferences for each user.
  • listening to database stream.
  • listing brew data.
  • handling user settings in a bottom sheet.
  • working with drop-downs and sliders.
  • using a stream builder and updating user data.

Based on Flutter & Firebase App Tutorial by Shaun Pelling - The Net Ninja (2019).

4) Ninja Trips

A travel app to understand Flutter animations.

See 04-ninja-trips folder

Features

  • setting up the Flutter starter project.
  • discovering built-in animations.
  • creating custom implicit animations with TweenAnimationBuilder.
  • animating widgets from one screen to another with Hero animations.
  • building an animation controller with Dart mixins.
  • combining animations with tween sequences.
  • handling animation speed with Curves.
  • staggering each list item.

Based on Flutter Animation Tutorial by Shaun Pelling - The Net Ninja (2020).