Developing Full-Stack Applications for the Cloud
Companion repository for O'Reilly Flutter & Dart Full Stack Cookbook
- 1.1 Running a Dart application
- 1.2 Declaring an integer variable
- 1.3 Declaring a Double variable
- 1.4 Declaring a bool variable
- 1.5 Declaring a string variable
- 1.6 Using a print statement
- 1.7 Using a const
- 1.8 Using final
- 1.9 Working with Null
- 2.1 Using an If statement
- 2.2 Using While/Do while
- 2.3 Using a For statement
- 2.4 Using a Switch statement
- 2.5 Using an Enum
- 2.6 Handling exceptions
- 3.1 Declaring functions
- 3.2 Adding Parameters to functions
- 3.3 Returning values from functions
- 3.4 Declaring anonymous functions
- 3.5 Using optional parameters
- 4.1 Using a map to handle objects
- 4.2 Retrieving Map content
- 4.3 Validating key existence within a Map
- 4.4 Working with Lists
- 4.5 Adding List content
- 4.6 Using Lists with complex types
- 5.1 Defining classes
- 5.2 Using class constructors
- 5.3 Extending a class
- 5.4 Extending classes with mixins
- 5.5 Importing a package
- 6.0 Using Dart test cases
- 6.1 Adding the Dart test package
- 6.2 How to apply unit tests to Dart
- 6.3 Grouping multiple unit tests
- 6.4 Adding mock data for testing
- 6.5 Performing widget testing
- 7.1 Mocking an interface
- 7.2 Creating a Flutter project
- 7.3 Working with a stateful widget
- 7.4 Working with a stateless widget
- 7.5 Refactoring widgets
- 7.6 Removing the Flutter debug banner
- 9.1 Using the Scaffold class
- 9.2 Using an AppBar
- 9.3 Using an Expanded widget
- 9.4 Building with a Container
- 9.5 Using a Center widget
- 9.6 Using a SizedBox
- 9.7 Using a Column
- 9.8 Using a Row
- 10.1 Incorporating rich text
- 10.2 Incororating the Google Fonts package
- 10.3 Identifying the host platform
- 10.4 Using a Placeholder widget
- 10.5 Using a Layout builder
- 10.6 Getting screen dimensions with Media query
- 11.1 Implementing a vertical list
- 11.2 Implementing a horizontal list
- 11.3 Adding a SliverAppBar
- 11.4 Adding a grid of items
- 11.5 Adding a SnackBar (pop up notification
- 12.1 Adding page navigation with routes
- 12.2 Implementing a navigational drawer
- 12.3 Working with tabs
- 12.4 Adding bottom navigation
- 12.5 Using keys to pass information
- 13.1 Refactoring data
- 13.2 Local data management
- 13.3 Asset folder management
- 13.4 Remote data management JSON
- 13.5 Automating JSON to Dart classes
- 13.6 Using JSON serialization
- 14.1 Testing widgets in Flutter
- 14.2 Performing integration testing with Flutter Driver
- 14.3 Testing Android/iOS device compatibility
- 15.1 Integrating Firebase backend with Flutter
- 15.2 Setting up a Firebase project
- 15.3 Initilise Firebase on the client
- 15.4 Firebase/Flutter client integration
- 15.5 Configuring Firebase emulators for local development
- 15.6 Adding Firebase authentication to Flutter
- 15.7 Setting up Cloud Firestore
- 15.8 Writing data to Cloud Firestore
- 15.9 Reading data from Cloud Firestore
- 16.1 Introducing cloud providers
- 16.2 Working with identity and access management
- 16.3 Using cloud storage to host and API
- 16.4 Using a Google Sheet as a backend
- 16.5 Developing with Cloud Run serverless (cloud run)
- 17.1 Adding the Flame package to Flutter
- 17.2 Using the Flame boilerplate
- 17.3 Refactoring with Flame components
- 17.4 Using the Flame graphic primitives
- 17.5 Adding text rendering
- 17.6 Adding sound effects to a Flame game
- 17.7 Adding keyboard input
- 17.8 Adding collision detection
- 17.9 Adding input for user interactivity