Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Gatsby starter for building type-safe static sites with ReasonML, BuckleScript, and React.
Gatsby Starter ReasonML is a Gatsby v2 boilerplate that builds static sites with ReasonML, BuckleScript v4, and React, giving developers type-safe functional programming on the Gatsby platform.
Gatsby Starter ReasonML is a starter project created by iwilsonq, inspired by Gatsby's default blog starter but rewritten to support ReasonML. It takes ReasonML source files as input and compiles them through BuckleScript to JavaScript that runs in Gatsby, producing a static site with blog-style pages. The starter runs on the Gatsby framework and uses the npm scripts dev:bsb and dev:gatsby to start development.
http://localhost:8000/___graphql for experimenting with Gatsby's data query layer.Create a new site by installing the Gatsby CLI globally and running gatsby new my-super-neat-reasonml-site https://github.com/iwilsonq/gatsby-starter-reasonml. Inside the project, run npm run dev:bsb to compile ReasonML and npm run dev:gatsby to start the development server at http://localhost:8000. Editing src/pages/index.js triggers hot reload in the browser.
Yes, the starter is open source and available on GitHub, so you can use it without paying any license fees.
No, you can still run and customize the site, but writing custom components assumes familiarity with ReasonML syntax and BuckleScript, since that is the language the starter is built around.
The starter specifies Gatsby v2 and BuckleScript platform v4, with bs-css and bs-date-fns as included dependencies.
No, it uses ReasonML rather than TypeScript; that is its main differentiator from many other Gatsby starters.
Since Gatsby generates a static site, the built output can be hosted on any static hosting service, though the page does not specify deployment steps.
Other Gatsby starters include the official gatsby-starter-default and gatsby-starter-blog, which use plain JavaScript instead of ReasonML.