GitHub Hot Board

GitHub Hot Board · Archivio repository

meta/flow

Adds static typing to JavaScript to improve developer productivity and code quality. (Questa descrizione proviene dal repository.)

Rust

Dati al October 29meta

Miglior posizione

#126

Storico · Rust per lingua

22K

Stelle totali

1.9K

Fork totali

0

Giorni in classifica (30 g)

Licenza: MITUltimo push: October 29Issue aperte (PR incl.): 512Raccolto dal 2026-10-25; sconosciuto = non ancora raccolto

Documentazione del progetto

Flow

CircleCI Follow @flowtype MIT License GitHub contributors GitHub top language Join Discord Chat

Flow is a static typechecker for JavaScript. To find out more about Flow, check out flow.org.

Contents

Requirements

Flow works with:

  • macOS (arm64)
  • Linux (x86_64 and arm64)
  • Windows (x86_64, Windows 10 recommended)

There are binary distributions for each of these platforms and you can also build it from source on any of them as well.

Using Flow

Check out the installation instructions, and then the usage docs.

Using Flow's parser from JavaScript

Flow's parser is available as a compiled-to-JavaScript module published to npm, named flow-parser. Most end users of Flow will not need to use this parser directly, but JavaScript packages which make use of parsing Flow-typed JavaScript can use this to generate Flow's syntax tree with annotated types attached.

Building Flow from source

Flow is written in Rust. GitHub CI builds Flow from the rust_port workspace with nightly Rust.

  1. Install system dependencies:

    • Install Rust via rustup.

    • Install the nightly Rust toolchain:

      rustup toolchain install nightly
  2. Build the Rust workspace:

    cd rust_port
    cargo +nightly build
  3. Run the Rust tests:

    cargo +nightly test
  4. Build an optimized flow binary:

    cargo +nightly build --release --bin flow_cli
  5. Build flow.js (optional):

    The flow.js build also uses the Rust port. Install Emscripten, Node, Yarn, and a Rust nightly toolchain with the wasm32-unknown-emscripten target and rust-src component first. GitHub CI uses Emscripten 3.1.44 and nightly Rust for this build.

    rustup toolchain install nightly-2026-04-14 --target wasm32-unknown-emscripten --component rust-src
    RUSTUP_TOOLCHAIN=nightly-2026-04-14 make js FLOW_JS_IMPL=rust-wasm

    This produces bin/flow.js.

    To build a faster, larger local development version instead, run:

    RUSTUP_TOOLCHAIN=nightly-2026-04-14 make js FLOW_JS_IMPL=rust-wasm FLOW_DOT_JS_WASM_PROFILE=dev

    The Flow parser can also be compiled to JavaScript. Read how here.

Running the tests

See tests/README.md for detailed testing documentation.

Join the Flow community

License

Flow is MIT-licensed (LICENSE). The website and documentation are licensed under the Creative Commons Attribution 4.0 license (website/LICENSE-DOCUMENTATION).

Classifiche attuali

Andamento degli ultimi 30 giorni

Nessun record negli ultimi 30 giorni.

Metti il badge nel tuo README · meta/flow[![Metti il badge nel tuo README](https://git.vaiox.xyz/api/badge/meta/flow.svg)](https://git.vaiox.xyz/it/repo/meta/flow)

Badge · 任何仓库都可以挂 —— 未上榜的仓库显示灰章,上完榜会自动点亮。

<a href="https://git.vaiox.xyz/it/repo/meta/flow"><img src="https://git.vaiox.xyz/api/badge/meta/flow.svg" alt="Metti il badge nel tuo README" height="20"></a>

← Torna alle classifiche

GitHub Hot BoardMacchina del tempoScopri联系我们 · Contact