Course info
Jun 29, 2018
1h 45m

Today's JavaScript programs are larger and more complex than ever. In this course, Flowtype Fundamentals, you will learn how to handle this growing complexity by gradually creating a strong, static type system for a JavaScript codebase. First, you will learn the value of types in general. Next, you will explore the fundamental types of Flow in action as you start a small project from scratch. Finally, you will discover how you can add types to a preexisting JavaScript codebase and how that can affect the experience. By the end of this course, you will feel prepared to use Flow as a tool to increase your confidence in your own JavaScript projects.

About the author
About the author

He's a creator at heart, making art, music and software. He's been privileged to work with talented teams and contribute to great causes and useful products and hopes to do more of it.

More from the author
Styling React Components
1h 23m
Mar 13, 2019
Electron Fundamentals
1h 50m
Aug 22, 2016
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi. I'm Jake Trent. Welcome to my course on Flowtype Fundamentals. Ever wondered what types or data types are or why you'd want more types in your JavaScript or have you ever wondered how you might increase your confidence that your growing JavaScript code base was growing in a positive way? Flowtype is a powerful tool to be a part of your approach in doing just that, allowing you to gradually create a strong static type system for your JavaScript projects. Let's learn Flowtype, also called Flow together. We'll set out with a quick introduction of why types are important, then a fun project-based approach where we'll learn types as they're actually encountered in a project, not in a stogy academic list, and we'll also experience how to add types to a pre-existing project like the one you might have today. In the end, you'll have experienced the full lifecycle of starting, developing, and then retrofitting a project with types and you'll be ready to start using Flow in your own project. So let's get this party started with Flowtype Fundamentals, at Pluralsight.

Find a Place for Types and Flow
Welcome to this course on Flow. This course will help you up your game when it comes to creating new JavaScript projects. My name is Jake Trent and I'm glad to be learning these concepts with you. Have you ever been introduced to a JavaScript project where you've wondered how to use many of the APIs that previous developers had written? Have you ever created a large JavaScript code base yourself and found that as it grew, you were losing your grip on how it worked? In both situations, your confidence waned. Well, we want to get our confidence back up as a developer of great JavaScript applications. Inside our programs, let's take a look at types of data types, in general, and see how they can help and let's see how Flowtype specifically brings some of these benefits to use in the JavaScript world. Perhaps there's a place for types and Flowtype in your development process. Let's find out together.

Setup Your Project for Flow
When starting out with a new tool in your tool chain, it's important to see how it fits into your environment and workflow. Let's take a look at the tools that flow provides and figure out how to get Flow integrated into a project. Flow provides some simple, powerful tools that we're going to tryout together, so let's get ready for our first peek at Flowtype in a project.

Start Your Project with Flow Types
If you start a fresh project today and want to use Flowtypes in it, what would that process look like? Well, let's go through that process together. We're going to take some time to catalog some of the powerful types that Flow provides for us, and we'll see how it changes the developer experience for us as we set things up.

Add Flow Types to Your Existing Project
Most of us have other JavaScript code bases with no additional type information from Flow or otherwise. How does picking up development in the middle of one of these cycles feel? Let's go in after the fact and add some types to the project midstream. Let's see what additional information that types can give us in these situations.

Use Flow with Packages
Of course, it's not always our own packages that we need typed information for. These days, many projects have large components of third-party dependencies that need to be integrated with. Can Flowtype help here? Let's see what tooling exists for this and how the community has decided to help us out. Perhaps we can contribute back ourselves. We're about to round out our understanding of the fundamentals of Flow.