https://github.com/mlms13/brown-shark
This is top secret, as you can tell from the name. It might also be called recline. Re-CLI...ne
https://github.com/mlms13/brown-shark
Last synced: 3 months ago
JSON representation
This is top secret, as you can tell from the name. It might also be called recline. Re-CLI...ne
- Host: GitHub
- URL: https://github.com/mlms13/brown-shark
- Owner: mlms13
- License: mit
- Created: 2023-03-07T02:21:40.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-03-07T02:21:43.000Z (over 3 years ago)
- Last Synced: 2025-06-19T20:48:33.247Z (12 months ago)
- Language: Makefile
- Size: 65.4 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# melange-opam-template
A simple project template using [Melange](https://github.com/melange-re/melange)
with [opam](https://opam.ocaml.org/).
If you are looking for a template with esy, check [melange-esy-template](https://github.com/melange-re/melange-esy-template).
## Quick Start
```shell
make init
# In separate terminals:
make watch
make serve
```
### React
React support is provided by
[`@rescript/react`](https://github.com/rescript-lang/rescript-react). The entry
point of the sample React app is [`src/ReactApp.re`](src/ReactApp.re).
## Commands
You can see all available commands by running `make help` or just `make`. Here
are a few of the most useful ones:
- `make init`: set up opam local switch and download OCaml, Melange and
JavaScript dependencies
- `make install`: install OCaml, Melange and JavaScript dependencies
- `make watch`: watch for the filesystem and have Melange rebuild on every
change
- `make serve`: serve the application with a local HTTP server
## JavaScript output
Since Melange just compiles source files into JavaScript files, it can be used
for projects on any JavaScript platform - not just the browser.
All ReasonML/OCaml/ReScript source files under `src/` will be compiled to
JavaScript and written to `_build/default/src/*` (along with some other build
artifacts).
For example, [`src/Hello.ml`](src/Hello.ml) (using OCaml syntax) and
[`src/Main.re`](src/Main.re) (using ReasonML syntax) can each be run with
`node`:
```bash
node _build/default/src/Hello.bs.js
node _build/default/src/Main.bs.js
```