What & Why
ReasonReact helps you use Reason to build React components with deeply integrated, strong, static type safety.
It is designed and built by people using Reason and React in large, mission critical production React codebases.
ReasonReact uses Reason's expressive language features, along with smooth JavaScript interop to provide a React API that is:
- Safe and statically typed (with full type inference).
- Simple and lean.
- Familiar and easy to insert into an existing ReactJS codebase.
One of ReactJS's strengths is that it uses the programming language's features to implement framework features. It is often said that ReactJS feels like an extension of the programming language. ReasonReact pushes that philosophy further because the Reason syntax and language features are a better match for React programming patterns. ReasonReact also uses built-in language features to seamlessly integrate into other UI framework patterns left unaddressed by ReactJS. Routing, data management, component composition and components themselves all feel like "just using Reason".