Section 6: Lab: AnimationController, Tween and Hero
- Create an AnimationController with Tween and CurvedAnimation
- Control motion with AnimatedBuilder and transition widgets
- Hero animations between a list screen and a detail screen
- Custom page transitions with PageRouteBuilder
- Apply animations to the sample project without slowing the app down
Section 7: Lab: State Management with Provider
- The problem of passing state across many screens as an app grows
- ChangeNotifier, ChangeNotifierProvider and MultiProvider
- context.watch, context.read and Selector to avoid unnecessary rebuilds
- Split provider classes by feature to support larger projects
- An overview of Riverpod and Bloc to choose from at the next level
Section 8: Lab: Connecting Flutter to the Laravel API
- Install the http package and set the base URL for emulators and real devices
- Write a service and a repository that keep API calls out of the screens
- Create models with fromJson and toJson
- Show API data in a ListView with loading and error states
- Handle errors, timeouts and HTTP status codes systematically
Section 9: Workshop: CRUD over the API
- Build a form to add records, with input validation
- Edit existing records and send the changes to the API
- Delete records with a confirmation step
- Pick a photo from the camera or gallery with image_picker and upload it to the API
- Workshop: refresh the list immediately after adding, editing or deleting
Section 10: Lab: Token Login and Secure Storage
- A login screen that calls the Sanctum endpoint and receives a token
- Store the token with flutter_secure_storage instead of plain text
- Attach a bearer token to every request and handle expired tokens
- Sign in automatically when the app reopens, and log out