reasonml / ReasonNativeProject

Reason native compilation starter project
MIT License
203 stars 45 forks source link

!DEPRECATED! Use hello-reason instead

Original README below:

ReasonNativeProject

Reason project for native compilation:

More info on the workflow.

Build Status

Develop With OPAM

Build:

Clone the repo and run these commands from within the project:

opam update # get the latest opam packages data. Skip this optionally
# opam will read into the `opam` file and add the other dependencies
opam install reason
opam install merlin
opam install re
make build    # build/rebuild your files

Run:

./_build/install/default/bin/reason-native-bin

Develop:

Preliminary Esy Support

You may alternatively use esy to build and develop this project. (esy is like "npm for native"). This is preferable for people who want to build native Reason projects using existing opam packages, but with a more familiar and sandboxed workflow. This is experimental and not stable yet. Please report any issues to the esy repo.

Build:

npm install -g esy@latest
esy install
esy build

Run:

Use esy x ("esy execute") command to run the binary.

esy x reason-native-bin

Develop:

Developing Your Project

The entrypoint of this project is the ./bin/test.re file. Make a simple change to it and then rerun the build.

ReasonNativeProject is meant to be the starting point of your own project. You'll want to make use of existing libraries in your app, so browse the growing set of opam packages in the opam repository.

Troubleshooting

In general, if something goes wrong, try upgrading your install of the project by running opam upgrade ReasonNativeProject, or if it failed to install and you later fixed it, opam install ReasonNativeProject.