A better Documentation Platform for Reason

The website reasonml.org is a community project dedicated to a better doc experience for the Reason & BuckleScript platform and is currently a Work in Progress.

More details about this project and its high level roadmap (1-2 years) are documented here.

Current Progress

FeatureStatusNote
ReasonML Manual (v3.6)in sync w/ reasonml.github.io
BuckleScript Docs (v7)in sync w/ bucklescript.github.io
ReasonReact Docs (v0.7)in sync w/ reasonml.github.io/reason-react
GenType Docs (v3.12)in sync w/ github.com/cristianoc/genType
Playground🚧In the works within the BuckleScript repo
BS API Docs🚧Only JS / Belt module (rest coming soon)
Full Page Search📝In the planning phase
BlogNot started
CommunityNot started

Stay informed about recent updates either via the @ReasonAssoc twitter handle or within the ReasonML Discord!

Official Resources

In case you are looking for the current official docs, here is a good reference sheet:

Current Focus / Open Tasks

Following sections are just a rough outline on what needs to be done in the next steps:

Docs:

  • Upstream the Reason language docs from reasonml.github.io

  • Upstream the BuckleScript docs from bucklescript.github.io

  • Upstream GenType docs

  • Merge Reason's & BuckleScript's docs into one cohesive document

API documentation:

  • Refining the Belt API & Js API documentation by hand via markdown

  • Deep dive into odoc to extract API documentation from the BuckleScript modules' source code

  • Upstream our markdown curated changes of the Belt / Js modules into the BuckleScript source code

Playground:

  • Implement the design for mobile and desktop

  • Improve the BuckleScript generated playground bundle for our use-cases (see issue)

  • Improve the workflow for generating third-party package bundles (define a protocol on how to hook those into the playground engine)

  • Integrate the Playground Engine + ReasonReact 3rd Party dep into the UI (see the NIT playground for inspiration)

Search Functionality:

  • Build the custom Search overlay (see the design)

  • Add Algolia's OSS webscraper engine and wire it up with our UI

  • Generate indexing data via odoc and use a paid plan for Algolia's indexing service

  • Tweak UI for API vs. whole page searches

How to contribute

Check out our contribution guidelines to find a task to work on and make sure to sync up with the team via Discord (ReasonML / #docs channel) and / or ping @ryyppy.

If you want to contribute to the ReasonML / BuckleScript / ReasonReact / GenType docs, please open PRs on the original sources for now and feel free to open issues on reasonml.org to let us know about it.

Also check out our markdown guide to get an overview over all available UI components when writing documentation.

Sponsors

We want to thank our sponsors for making this project possible.

We are always looking for new sponsor partners to continously improve our documentation experience. Please refer to the Reason Assocation's donation section for more information.