reasonml/reason-react

Reason bindings for ReactJS

Reason

3,262

1,208 commits

updated Sep 28, 2026

See the code

README

Warning For ReScript users, we recommend using @rescript/react instead. Before, ReasonReact was designed to be used with BuckleScript and it got packaged into @rescript/react. More context on the move here.

ReasonReact

PRs Welcome contributors discord twitter

ReasonReact is a safer, simpler way to build React components. You get a great type system with an even better developer experience. Why choose ReasonReact? Read more here

ReasonReact is just React.js under the hood. This makes it super easy to integrate with your current Next.js, Create React App, JavaScript, Flowtype or TypeScript project. Learn more about getting started here

Watch Ricky Vetter's Reason Conf talk, "Why React is Just Better in Reason" to learn more about how Facebook & Messenger are using ReasonReact

Watch Jordan Walke's Reason Conf talk, "React to the Future" to learn more about the future of ReasonML and React

Example

/* Greeting.re */

[@react.component]
let make = (~name) => <h1> {React.string("Hello " ++ name)} </h1>

See all of our examples here. For a full application, check out reason-react-hacker-news.

Using Your Favorite Javascript Libraries

The same way that TypeScript has type annotations, we have bindings. Bindings are libraries that allow you to import a popular project (like lodash) or to import your own local file. ReasonReact is in fact an example of a binding!

Documentation

See https://reasonml.github.io/reason-react

Contribute

We welcome all contributors! Anything from docs to issues to pull requests. Please help us 😄

./CONTRIBUTING.md

Editor Support

Looking for syntax highlighting for your favorite editor? Check out ReasonML Editor Plugins

melange
react
reasonml

Project health

Overall

2.7/10

Maintained

0/10

Code review

1/10
OpenSSF Scorecard

Latest release

0.11.0 · Jun 19, 2023

Releases this year

0

Significant stargazers

(top 24 of 46)

Thibaut Mattio

207 followers · starred Jul 2018

Janic Duplessis

800 followers · starred Mar 2018

Ulrik Strid

166 followers · starred Jun 2023

Wojtek Czekalski

242 followers · starred Nov 2017

reasonml/reason-react

Reason bindings for ReactJS

Reason

3,262

1,208 commits

updated Sep 28, 2026

See the code

README

Warning For ReScript users, we recommend using @rescript/react instead. Before, ReasonReact was designed to be used with BuckleScript and it got packaged into @rescript/react. More context on the move here.

ReasonReact

PRs Welcome contributors discord twitter

ReasonReact is a safer, simpler way to build React components. You get a great type system with an even better developer experience. Why choose ReasonReact? Read more here

ReasonReact is just React.js under the hood. This makes it super easy to integrate with your current Next.js, Create React App, JavaScript, Flowtype or TypeScript project. Learn more about getting started here

Watch Ricky Vetter's Reason Conf talk, "Why React is Just Better in Reason" to learn more about how Facebook & Messenger are using ReasonReact

Watch Jordan Walke's Reason Conf talk, "React to the Future" to learn more about the future of ReasonML and React

Example

/* Greeting.re */

[@react.component]
let make = (~name) => <h1> {React.string("Hello " ++ name)} </h1>

See all of our examples here. For a full application, check out reason-react-hacker-news.

Using Your Favorite Javascript Libraries

The same way that TypeScript has type annotations, we have bindings. Bindings are libraries that allow you to import a popular project (like lodash) or to import your own local file. ReasonReact is in fact an example of a binding!

Documentation

See https://reasonml.github.io/reason-react

Contribute

We welcome all contributors! Anything from docs to issues to pull requests. Please help us 😄

./CONTRIBUTING.md

Editor Support

Looking for syntax highlighting for your favorite editor? Check out ReasonML Editor Plugins

melange
react
reasonml

Project health

Overall

2.7/10

Maintained

0/10

Code review

1/10
OpenSSF Scorecard

Latest release

0.11.0 · Jun 19, 2023

Releases this year

0

Significant stargazers

(top 24 of 46)

Thibaut Mattio

207 followers · starred Jul 2018

Janic Duplessis

800 followers · starred Mar 2018

Ulrik Strid

166 followers · starred Jun 2023

Wojtek Czekalski

242 followers · starred Nov 2017