Distribute and Deploy to iOS and Android from a Single Codebase
In this course you'll build a corporate app and package it for iPhone and Android from a single codebase.
Flutter is a popular and feature-rich multi-platform development toolkit, but it's got some surprises for traditional web and desktop developers. You'll learn how to think in the Flutter way and build fast, maintainable, visually appealing apps.
Build Better Mobile Apps with Flutter
Build Better Mobile Apps with Flutter
Smartphones are the most popular computing devices in the world, and mobile apps are the best way to reach technology consumers. But building fully native apps means learning two or more completely different sets of programming languages, UI frameworks, layout systems, and developer toolkits. Other cross-platform frameworks have tried to make this process easier, but none of them have achieved the popularity, performance, or resilience of Flutter.
With Flutter, you'll avoid several problems you may have had with other app frameworks:
- Publish native app packages for iOS, Android, Windows, macOS, and Linux, all from a single codebase, without writing a single line of native code.
- Write faster, safer code with the familiar syntax, type safety, and null safety of the Dart programming language.
- Flutter is an all-in-one component library and toolkit: spend your time building components and writing application logic instead of fiddling with toolchain configuration and searching for 3rd-party packages.
- Never worry about the way your app looks on different devices; with Flutter's built-in rendering engine and logical pixel scaling, your app will look the same on every screen, everywhere.
Be Prepared for Any Challenge
Flutter is an easy-to-learn, top-rated technology for developers, but it doesn't come without gotchas. In this course, you'll learn to breeze right through some of the hardest parts of Flutter development:
- Responsive design, complex layouts, and breakpoints
- Layout errors and infinite constraints
- Hand-drawn components
- Custom animations, tickers, and tweens
- State management and data persistence
Start Building Real Apps Faster
This course won't waste any time teaching you what an if
statement is. You'll be able to use the
programming experience you already have and jump straight into building mobile apps with Dart and Flutter.
Along the way, you'll build skills you can use immediately for any app you dream up:
- By the end of Module 2, you'll have already packaged a Flutter app for distribution on the iOS and Android app stores.
- By the end of Module 3, you'll have a seed app you can use for any project.
- By the end of Module 4, you'll know how to build responsive layouts and use the most common types of widgets.
- By the end of the course, you'll have built an accessible, interactive, server-backed app with custom animations and three types of automated tests.
Along the way, you'll discover Flutter's secret: it's not only the easiest way to build cross-platform mobile and desktop apps, it's the easiest way to deliver any* kind of technological experience, period**. Not even the web, with its variety of frameworks and tools, can match the development speed and polished UI of a Flutter app.
What's in the book
Flutter is a popular cross-platform development framework. It's packed with off-the-shelf features and focused on developer ergonomics, which means you can build faster and deploy to more platforms with fewer dependencies. Some parts of the framework will catch you by surprise, though, especially if you're used to developing for the web or writing native apps. This course will walk you through the creation of a Flutter app from setup to final package and help you develop a mental model that will carry you through the most common problems Flutter devs encounter. By the end of these 10 modules you'll have built:
What You Will Build
Build a secure login modal with HTTP authentication and persistent cookies
Build responsive, nested layouts and intuitive user interactions
Build fast, informative data visualizations
Build interactive data tables
Our students work at
Isaac Lyman is a software engineer and writer from Utah, USA. He's been writing code for nearly 20 years, working with companies across several different fields and technology stacks. He's primarily a web developer by day but enjoys writing development tools, plug-ins, and apps on his own time. He's the editor and lead author of Your First Year in Code, a complete guide to software development careers for new and aspiring developers. He's also a guest contributor to the Stack Overflow Blog (https://stackoverflow.blog). He maintains several open-source projects as well as two Flutter apps, which are available on the App Store and Google Play.
Table of Contents
- Introduction1
- About this course
- Getting Started2
- About Module 2
- About Flutter and Dart
- Hardware & software setup
- Creating a Flutter app
- Running your app
- Pub packages
- Setting the app name, icon, and bundle ID
- Packaging for the App Store and Google Play
- Creating A Seed App3
- About Module 3
- Dart cheat sheet
- Flutter in a nutshell
- Setup: State
- Setup: Theming
- Setup: Navigation
- Setup: Scaffold
- The Profile Page4
- About Module 4
- Creating the widget and route
- Stubbing data
- Widgets that wait for data
- Layout basics
- Image
- Responsive layouts, part 2
- Scrolling layouts
- Layout problems
- Buttons
- Accessibility5
- About Module 5
- VoiceOver on iOS
- TalkBack on Android
- Accessibility Widgets
- Storage and HTTP6
- About Module 6
- Shared preferences
- HTTP requests
- Login and authentication
- Managing user state
- Tables and Charts7
- About Module 7
- Data tables
- Charts and graphs
- Animations8
- About Module 8
- Simple animations
- Custom paint
- Custom animations
- Testing9
- About Module 9
- Unit tests
- Widget tests
- End-to-end tests
- Wrapping up10
- Congratulations
Build Stylish Cross-Platform Apps In Days, Not Months
Bring your mobile app ideas to life on every device
newline Pro Subscription
$18/MO
Get unlimited access to the book, plus 60+ newline books, guides and courses. Learn More
Billed annually or $40/mo billed monthly. Free to cancel anytime.
- All Code Samples
- Discord Community Access
- Unlimited access to 60+ newline Books, Guides and Courses
- Interactive, Live Project Demos for Every newline Book, Guide and Course
- Complete Project Source Code for Every newline Book, Guide and Course
- Best Value 🏆
I'm wondering...
What is Line-of-Business Apps with Flutter 3?
Line-of-Business Apps with Flutter 3 is a hands-on course in Flutter, a powerful cross-platform app development framework.
Who is this course for?
This course is best suited to developers who already have some experience with a modern programming language, like Java, TypeScript, Swift, Kotlin, or C#, and want to start building mobile apps as quickly as possible.
How long will the course take?
You can do the lessons at your own pace and in any order. If you follow them all from start to finish, we estimate it will take 10 hours or less.
What's included in the course?
The course includes 8 lesson modules, 37 lessons, a complete Flutter app, a Dart server, and a ton of code samples you can use to develop any kind of mobile or desktop app.
What if I need help?
You can ask us questions anytime through the community Discord channel or by sending us a message.