Book Image

Taking Flutter to the Web

By : Damodar Lohani
Book Image

Taking Flutter to the Web

By: Damodar Lohani

Overview of this book

Using a shared codebase in addition to an extensive range of tools in the Flutter ecosystem optimized for browsers, the Flutter framework has expanded to enable you to bring your mobile apps to the web. You’ll find out how web developers can leverage the Flutter framework for web apps with this hands-on guide. Taking Flutter to the Web will help you learn all about the Flutter ecosystem by covering the tools and project structure that allows you to easily integrate Flutter into your web stack. You’ll understand the concepts of cross-platform UI development and how they can be applied to web platforms. As you explore Flutter on the web, you'll become well-versed with using Flutter as an alternative UI platform for building adaptive and responsive designs for web apps. By the end of this Flutter book, you'll have built and deployed a complete Flutter app for the web and have a roadmap ready to target the web for your existing Flutter mobile apps.
Table of Contents (17 chapters)
1
Part 1: Basics of Flutter Web
5
Part 2: Flutter Web under the Hood
9
Part 3: Advanced Concepts

What this book covers

Chapter 1, Getting Started with Flutter on the Web, introduces the Flutter ecosystem and the web as a part of that ecosystem. It also makes clear why we should learn Flutter on the web and what benefits it can add. Finally, it describes what types of web apps should and shouldn’t be built with Flutter. You will also get to know some real-world Flutter web applications.

Chapter 2, Creating Your First Web App, will describe how to start a Flutter project with web platform support. We will build and run a Flutter project on the web using Flutter widgets. This will be a dynamic and responsive app that interacts with its audience.

Chapter 3, Building Responsive and Adaptive Designs, will teach us that the web has a huge number of target devices of different screen sizes and densities. As Flutter is cross-platform, each platform needs to have a native feel. This chapter covers the concept of adaptive and responsive design, which lets us just build apps that are responsive and adaptive to the platform – the web.

Chapter 4, Flutter Web under the Hood, will look at how Flutter renders its widgets as web apps. Understanding these inner workings will help us build better web apps using Flutter.

Chapter 5, Understanding Routes and Navigation, will detail how to use routes and navigation in Flutter on the web. This chapter will cover navigation with a special focus on how this occurs on the web. You will see how to use declarative navigation and understand its benefits.

Chapter 6, Architecting and Organizing, will cover the need for proper architecture and we will learn about simple yet scalable architecture. This chapter discusses why scalable architecture is important and how you can organize files and folders to make it easier to scale and work. You will understand the MVVM architecture, which is simple yet scalable, and see how to practically apply it in an application.

Chapter 7, Implementing Persistence, will teach us how to save data locally using various options – simple key-value storage, or more advanced object storage. You will discover how to persist simple key-value data, which is useful for user settings, and how to use the offline storage for caching, as well as key-value data using HiveDB.

Chapter 8, State Management in Flutter, will outline the basics of state management, as well as covering how to use Riverpod as a state management solution. You will discover the importance of state management and the various options available for it.

Chapter 9, Integrating Appwrite, will teach us how to integrate Appwrite, an open source BaaS for web and mobile applications with services such as Authentication, Database, Cloud Functions, and more.

Chapter 10, Firebase Integration, will detail how to integrate and use Firebase solutions to build dynamic web apps using Flutter. We will cover the authentication part, wherein we will be able to authenticate users. We will see how to implement Firestore to save and load dynamic content.

Chapter 11, Building and Deploying a Flutter Web Application, will expand upon the concepts required to build and deploy web apps developed with Flutter. In this final chapter, we will also learn how to automate our task of building and deploy web apps using CI/CD.