Skip to content

Huxpro/githuber.re-v2

Repository files navigation

Get Started:

$ npm install
$ npm run start # bsb -make-world
# in another terminal tab
$ npm run dev  # start dev server

Known issues:

  • Routing is messed up for when the app is hosted with basename.
    • The V1 of this project did handle it by wrapping ReasonReactRouter.

This project demonstrates the following tech stack:

Reason is a statically-typed, functional programming language backing by OCaml.

It leverage both the JavaScript & OCaml ecosystems by providing a familiar syntax geared toward JavaScript programmers and by catering to the existing NPM/Yarn workflow folks already know.

⚛️ ReasonReact with Functional APIs and Hooks.

ReasonReact is Reason's official binding to React.js. By leveraging the Reason's built-in language features, it pack React.js' APIs into one that is statically-typed, simple, familiar and feels "Just using Reason".

This project used the latest Function APIs with Hooks and updated built-in Router API.

GraphQL_PPX is a syntax extension for BuckleScript/Reason. It make constructing GraphQL queries in Reason a first-class experience and type-safe, with compile time type check instead of runtime errors.

This project used the BS/Reason version of GraphQL from the reasonml-community. The mhallin's version used by the V1 of this project does not build with OCaml 4.06 unfortunately.

BuckleScript is a compiler and toolchain that transforms OCaml/Reason into readable JavaScript code. It comes with a powerful API to talk to JS, allowing you to access the latter's vast ecosystem.

This project used its bsb build system for generated intial project templates. Checkout ReasonReact installation for more details.

Github announced its public APIs v4 that supports GraphQL. Thanks to that, we can play and demonstrate GraphQL's power without the ceremoies of building our own API server.

About

🐫 🟥 ⚛️ Demo-ing the power of the Reason Platform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published