# How suitable is OCaml for full stack web development?

**URL:** <https://discuss.ocaml.org/t/how-suitable-is-ocaml-for-full-stack-web-development/12879>\
**Category:** Learning\
**Created:** [August 21, 2023, 10:51pm UTC](https://discuss.ocaml.org/t/how-suitable-is-ocaml-for-full-stack-web-development/12879 "2023-08-21T22:51:49Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![dbuenzli](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/dbuenzli/32/18_2.png) [@dbuenzli](https://discuss.ocaml.org/u/dbuenzli)\
**Post date:** [August 22, 2023, 7:46am UTC](https://discuss.ocaml.org/t/how-suitable-is-ocaml-for-full-stack-web-development/12879/3 "2023-08-22T07:46:00Z")

</div>

> [@yawaramin](#):
>
> The first and simplest one you should probably look at is ReScript.

Well if you want to do full stack development in OCaml you probably don’t want to add yet _another_ language. So the “first and simplest” would rather be to use: [js\_of\_ocaml](http://ocsigen.org/js_of_ocaml/latest/manual/overview) which is a very stable and funded OCaml to JavaScript compiler closely following the latest compiler developments.

However if you don’t want to lose your time I’d personally advise to steer away from js\_of\_ocaml FFI and browser APIs and use [`brr`](https://erratique.ch/software/brr) instead which is an order of magnitude more ergonomic and documented. But I’m biased.

Also if you want to get an idea on how that could look like you can have a look [here](https://github.com/dbuenzli/hyperbib) (though I’m not happy with all the way the code looks like there :-). This is a fully working and actively used application that closely matches the description of what you are after. It’s a basic CRUD app not using `htmx` but a [derivative](https://erratique.ch/software/htmlact) that tries to address some of its [shortcomings](https://discuss.ocaml.org/t/htmx-htmlact-web-development-approach/9993/8), along with a little tiny bit of custom front end code. Though they will eventually be, not every library I’m using there is formally distributed yet, so you may have to use other components but it can give you an idea.

---

_[View the full topic](https://discuss.ocaml.org/t/how-suitable-is-ocaml-for-full-stack-web-development/12879)._
