Fast, Simple, Fully Typed JavaScript from the Future.
ReScript is a robustly typed language that compiles to efficient and human-readable JavaScript. It comes with a lightning fast compiler toolchain that scales to any codebase size.
any
, no magic types, no surprise undefined
.ReScript is used by many companies to ship and maintain mission-critical products and is maintained by the ReScript community.
Follow the Installation Guide to set up a new ReScript project or integrate ReScript into your existing JavaScript project.
For more information on building React apps with ReScript, see the rescript-react documentation.
For React Native apps, see the rescript-react-native website.
The full documentation for the ReScript language can be found on our website.
The source for the ReScript documentation and website is hosted in a separate repo.
See the Upgrading Guide for instructions on upgrading to newer ReScript versions.
Read our Contributing Guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to ReScript.
The ReScript community has adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.
You can learn more about our vision for ReScript in the Roadmap.
For discussions on ongoing development, see the Development section of the ReScript forum.
ReScript is licensed under LGPL version 3, with relaxed rules about creating and distributing combined work. See the LICENSE file for details.
The ReScript parser (subdirectory compiler/syntax
) is licensed under the MIT License.
The ninja
subdirectory contains the vendored ninja build system.
Refer to its copyright and license notices for information about its licensing.
ReScript was originally created by Hongbo Zhang in 2015.
See CREDITS.md for further acknowledgements and project history.