Flow

Getting Started

Never used a type system before or just new to Flow? Let's get you up and running in a few minutes.

FAQ

Have a question about using Flow? Check here first!

Type Annotations

Learn how to add Flow type annotations to your code: Primitives, Objects, Functions, Classes, and more.

Flow Enums

Define a fixed set of constants which create their own type. Exhaustively checked in switch statements.

Type System

Learn how the type system in Flow works: Subtyping, Variance, Refinements, and more.

CLI Commands

How to use Flow from the command line. Including how to manage the Flow background process.

Configuration

Flow tries to work out of the box as much as possible, but can be configured to work with any codebase.

Library Definitions

Learn how to create and use library definitions for the third-party code your code depends on.

Declaration Files

Learn how to write types in .flow files.

Error Suppressions

Learn how to suppress Flow's type errors.

React

Learn how to use Flow to effectively type common and advanced React patterns.

Tools

Detailed guides, tips, and resources on how to integrate Flow with different JavaScript tools.

Editors

Detailed guides, tips, and resources on how to integrate Flow with different code editors.

Linting

Learn how to configure Flow's linter to find potentially harmful code.

Flow Strict

Learn how to enable stricter type checking on a file-by-file basis.

© 2013–present Facebook Inc.
Licensed under the MIT License.
https://flow.org/en/docs/