Reason lets you write simple, fast and quality type safe code while leveraging both the JavaScript & OCaml ecosystems. More info

Articles & Tutorials

ReasonML with React Hooks Tutorial — Building a Pomodoro Timer (
Apr 15, 2019
ReasonML is a programming language that combines the simplicity of JavaScript with the performance of OCaml. JavaScript programmers should give ReasonML a try. Reason inherits OCaml's typesystem as well as the approachability of JavaScript.
  • Ian Wilson
A Reason React Tutorial for Beginners [2018] (
Dec 01, 2018
Learn how to build a Reason React application with this tutorial. You will use the GitHub API to fetch real data, render forms and data, and style your ReasonReact application with inline style and bs-css
  • Benjamin Johnson
Psst! Here’s why ReasonReact is the best way to write React (
Sep 20, 2018
Are you using React to build user interfaces? Well, I am too. And now, you’ll learn why you should write your React applications using ReasonML.
  • David Kopal
React vs ReasonReact (
Sep 07, 2018
This tutorial primarily focuses on React and ReasonReact and their benefits and disadvantages. If you don’t already know what ReasonReact is, it can be thought of as a version of React that is built on the statically-typed functional programming language, Reason. In the next sections, we will briefly introduce React and ReasonReact before exploring their pros and cons.
Getting started with Reason React and BuckleScript (
Aug 28, 2018
This tutorial will introduce OCaml, Reason React, and BuckleScript, and explain their relevance. To wrap things up, we will take a look at a demo project built with ReasonReact.
Routing in ReasonReact (
Apr 29, 2018
Introduction to Routing and Subscriptions
  • Ali Sharif

Video Guides & Talks

A Hitchhiker’s Guide to the new ReasonReact (
May 28, 2019
ReasonReact recently got a major overhaul. In this talk we explore the next version writing blazing fast, statically typed components using React Hooks. Once thrilled we add a little bit of genType’s magic on top of it, in order to compile our components to TypeScript, Flow or untyped JavaScript.
All aboard the type train (
May 01, 2019
JavaScript is a language of add-ons, and one of its more recent trends is typing. There are obvious benefits to typing, but what are the drawbacks? Should you choose Flow or TypeScript? Why use types at all? And why not just go straight to Reason? This session will provide some insight into these questions, peppered with examples from the real world.
  • Kadi Kraman
Building mobile apps with Reason (
Dec 01, 2018
This is an introductory talk to building mobile experiences with Reason, by using React Native and its bindings, known as bs-react-native.
  • Mike Grabowski
Making games and physics work with Reason & Reprocessing (
Nov 22, 2018
Reason is great for a whole lot of things, but let me take you through a story of trying to write a 2D physics engine in just under 8 hours (Mistakes were made), what strongly typed languages don’t protect you off, and a vision of what you could build with Reason or Reprocessing.
  • Phil Plückthun
Reasonable React Native (
Sep 14, 2018
An introduction to writing React Native applications using ReasonML. Find out why ReasonML is great, why writing React Native with Reason is the jam, and learn how you can get started with it today!
Intro to ReasonML Syntax from a JavaScript perspective (
Jul 03, 2018
I'm a total ReasonML noob, but I'm interested in learning. So here's me, learning :)
Get started with Reason (
May 25, 2018
We will kick off with the basics and then quickly go into how to leverage features like variant types and pattern matching to make impossible states impossible. After you gained some knowledge about the basics the course will dig even further into ReasonReact.
Making Unreasonable States Impossible (
May 25, 2018
Based on @nikgraf's introduction to Reason (Get started with Reason), this talk goes deeper into the world of variant types and pattern matching and puts them into a practical context. You will learn how these tools help you design solid APIs, which are impossible to misuse by consumers. Additionally you will get more insights into practical ReasonReact code.
  • Patrick Stapfer
A Pragmatists's Guide to ReasonML (
Jan 03, 2018
People in our community are bursting with excitement about ReasonML - but why is that, and what does it have to do with our beloved React? Is this something for hipster types only, or will we all be using it in a year's time?
  • Marcel Cutts

Podcast Episodes

TypeScript and ReasonML Christoffer Niska (
Aug 06, 2019
The panel discusses the affect learning another language has on how you write the code you’re working on. They talk about TypeScript and Christoffer shares how he got into it.
Reason feat. Jared Forsyth (
Sep 24, 2018
In today’s episode of the React Native Radio podcast, Nader Dabit, Peter Piekarczyk, Mike Grabowski speak with Jared Forsyth. Jared is a mobile developer at Khan Academy with expertise in JavaScript, React Native. Jared is on the show to share his experience with Reason. Jared talks particularly about the how Reason came about, the best use cases, and how to get started with the Reason platform.
Reason with Sander Spies (
Jul 17, 2017
  • Peter Piekarczyk
  • Sander Spies


reason-react (
Apr 10, 2019
Reason bindings for ReactJS
  • Cheng Lou