Reason Expo Save

ReasonML bindings for Expo

Project README

Reason Expo Logo

reason-expo

ReasonML bindings for Expo


NPM version badge

Versioning

This library doesn't follow conventional semver. The version scheme is shown below, and you should track this library accordingly.

<ExpoVersion>.<Major>.<Minor/Patch>

Getting started

Use the Expo CLI to bootstrap a project with the ReasonExpo template.

expo init <PROJECT_NAME> --template expo-template-reason

Already have an existing Expo Project? Go into your project root & then install the requirements:

yarn add bs-platform --dev
yarn add reason-react reason-react-native reason-expo

Next, create a file named bsconfig.json at the same level at your package.json with the following content:

{
  "name": "my-reason-expo-app",
  "reason": {
    "react-jsx": 3
  },
  "bsc-flags": ["-bs-super-errors"],
  "bs-dependencies": ["reason-react", "reason-react-native", "reason-expo"],
  "sources": [
    {
      "dir": "src"
    }
  ],
  "suffix": ".bs.js",
  "refmt": 3,
  "package-specs": {
    "module": "es6",
    "in-source": true
  }
}

Next, add these scripts to your package.json:

  "build-reason": "bsb -make-world",
  "watch-reason": "bsb -make-world -w",
  "build-reason-clean": "bsb -clean-world -make-world",

Finally, make a folder named src and start writing your ReasonML code in there. yarn build-reason will compile the ReasonML code in that folder for you to import and use in your Expo app's JS/TS code.

Contributing

Fork this repo, clone it onto your machine, install run yarn in the root directory. Start the compiler and Expo test app with yarn dev in the root directory, and start hacking away at the files in packages/reason-expo and packages/test!

Credit: This project is based on the work started in bs-expo.

Open Source Agenda is not affiliated with "Reason Expo" Project. README Source: draftbit/reason-expo
Stars
144
Open Issues
17
Last Commit
1 year ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating