A repository of high-quality, third-party library type definitions for use with Flow.
Note
We want to keep the flow-typed community informed about the current state and future direction of the project. As you might have noticed, our activity has slowed down in recent months. However, we are committed to maintaining the functionality of flow-typed and will continue to fix any issues that arise with new releases of Flow.
While we're not planning any major new features at the moment, we remain open to feature contributions from the community. Our focus remains on ensuring that the existing features work well and that type definitions are kept up to date. We appreciate the value that these contributions bring and encourage anyone interested in enhancing flow-typed to get involved.
Check out the quick start page in the docs to get started. It will walk you through installing typedefs, using them, as well as writing and including your own.
When you start a project with Flow, you likely want to use some third-party libraries that were not written with Flow. By default, Flow will just ignore these libraries leaving them untyped. As a result, Flow can't give errors if you accidentally mis-use the library (nor will it be able to auto-complete the library).
To address this, Flow supports library definitions which allow you to describe the interface of a module or library separate from the implementation of that module/library.
The flow-typed
repo is a collection of high-quality library definitions,
tests to ensure that definitions remain high quality, and tooling to make it
as easy as possible to import them into your project.
All you have to do when you add one or more new dependencies to your project
is run flow-typed install
. This will search the libdef repo and download all
the libdefs that are relevant for your project and install them for you. After
that, simply check them in and be on your way!
The flow-typed
npm package provides a CLI that includes several commands for
working with this repository. The full list of commands is available
in the docs .
Before opening an issue, take a look at the FAQs. Chances are your question has already been answered! If not, don't hesitate to open an issue.
Just send a pull request! The documentation highlighted in CONTRIBUTING.md should give a detailed overview of how to raise a pull request following our best practices.
Bugfixes and improvements to the core CLI are welcome. If you'd like to contribute a new feature, consider opening an issue first to discuss it.
@AndrewSouthpaw | @Brianzchen | @GAntoine | @pascalduez | @villesau |