
Create the flutter project, verify the flutter version, and open it in Visual Studio Code to prepare for iOS simulator testing. Run and debug to confirm it builds.
Configure dependencies in the yaml file, including flutter_riverpod, http client, and get_it, and avoid dev dependencies for release builds. Create assets/config and assets/images to store api_key, base_api_url, base_image_api.
In module two, create a flutter splash screen to initialize services and preload data, including secrets, before presenting the app's user interface and navigating to the home screen.
Create a Flutter splash page, initialize the app, and then navigate to the home screen using a two-app flow, a stateful splash page, and an on initialization complete callback.
Loads a config from an assets json file, decodes it into an app config model, registers it as a get_it singleton, then completes initialization to show the main UI.
Create an http service to send get requests to the movie db rest api using the app config url and api key. Register it as a singleton for app-wide access.
Create and register the movie service shell in a Flutter REST movie app using the get it package, wiring to the HTTP service for popular, upcoming, and search data.
Module three introduces wiring the main page logic after building the app skeleton, integrating essential services and splash page setup to enable the main page functionality.
Create the main page UI with a full-screen background image and a blur via a backdrop filter. Layer content using a stack and manage sizing with device height and width.
Develop the main page UI by building a top search bar with a category dropdown, a responsive container, and a text field using Flutter widgets like Container, Column, and TextField.
Build the main page UI with a sized container housing a movie list view and a builder for each movie, while fetching poster and backdrop paths from the api.
Extend the main page user interface to show the movie language, release date, adult status, and rating within a padded container, with a styled description and ellipses for long text.
Fix two typos on the main page to resolve the actor widget overflow, then adjust device width, constrain poster width, and set scaffold resize to avoid bottom inset for alignment.
Create a main page data model with movies, page, search category, and source text, then wrap it in a state notifier provided by Riverport to drive a responsive Flutter UI.
Implement category selection in a Flutter rest movie app by wiring the main page data controller to fetch popular or upcoming movies via the correct endpoints and update the ui.
Implement pagination by wrapping the list view in a notification listener and using on scroll to fetch more movies from the main page data controller when the end is reached.
Update the app background dynamically by using a state provider to track the selected movie poster URL and refresh the UI when a movie title is tapped.
Do you want to build a complete Flutter REST API application? This is the course for you!
WHAT WILL WE BE BUILDING?
In this course, we’ll use the best in Flutter to build a complete RESTful Application known as Flickd from zero to production-ready that you can release on the Google Play Store or iOS App Store. The application will display data regarding movies obtained from TheMovieDB website.
WHAT DOES THE APP FEATURE?
An amazing UI and Splash Screen
Functionality to display results regarding popular and upcoming movies
Functionality to search movies
Pagination, Authentication, state management
State management using Flutter Riverpod
WHAT CONCEPTS ARE COVERED?
A Complete Masterclass on Flutter REST API Development
Flutter Riverpod State Management Framework
Pagination
Authentication
Web Requests in Flutter
Handling Async Data with FutureBuilders, StreamBuilders, and Async / Await Functions
Form Validation and Error Handling
Custom Theme Creation and Fonts
Tons of Practical, Straightforward and Repeatable App-Building Patterns
And much more!
WHAT ELSE DOES THIS COURSE OFFER?
– Deep, Fine-Grained Learning – This course is jam-packed with information. I made the course that I most wanted to take and as a result, I didn't skimp on the details. You're going to cover more topics and material in greater depth than ever before.
– 100% Real-World Practice – My goal is to get you writing code as much as possible. And not just any code–we'll be working exclusively on practical tasks that are instrumental in building your own amazing real-world apps.
– No-Nonsense, Spot-On Explanations - Every lesson is to-the-point. I break down what we're making, how we'll be doing it and what the final product will look like, all on top of helpful and illustrative descriptions to aid your understanding along the way.
I really enjoyed making this course and I think you’ll enjoy taking it just as much.
Looking forward to seeing you within the course!
Who this course is for:
Mobile and web developers looking to build impressive real-world, production-ready apps!
Flutter developers looking for a challenge
Developers looking to delve into the world of Flutter and Riverpod State Management