Welcome to the July 2023 edition of the OCaml.org newsletter! As with the previous issues, this update has been compiled by @sabine and @tmattio.
Our goal is to make OCaml.org the best resource for anyone who wants to get started and be productive in OCaml. The OCaml.org newsletter provides an update of our progress towards that goal and an overview of changes we are working on.
We couldn't do it without all the amazing OCaml community members who help us review, revise, and create better OCaml documentation. Your feedback enables us to better prioritise our work and make progress towards our goal. Thank you!
This month, our priorities were:
In addition to our work on the site, we introduced new ways for the team to interact with the community. We've created an #ocaml.org Discord channel, and we started holding public OCaml.org dev meetings. Don't hesitate to reach out to us on Discord and join the dev meetings. We're always looking for new insights on things to improve!
As the designs for the new Learn area are nearing completion, we started implementing the UI. If you have visited the documentation in the past few weeks, you've probably noticed a few changes. The most prominent one being the new tabs to navigate the different parts of the documentation.
On the design front, our focus will now be directed to the mobile views and dark mode.
Relevant PRs and Activities:
We also continued the work on the new documentation content. As we've been through the lifecycle of new pages a couple times, we're getting more structured. Each new page goes through the following steps: Outline Approval, Drafting, Internal Review and, finally, Community Review. We have two new pages that are in the final stage (community review), namely the File Manipulation tutorial and Arrays guide. They should be ready to merge in the coming weeks. We also have a completely new Getting Started tutorial that aims to replace the existing "Your First Day with OCaml." It's currently in the internal review stage and should be shared on Discuss for community review soon.
Plus, we've got a lot more content in the drafting stage.
Stay tuned, as we'll be sharing more and more new documentation pages for community review!
Relevant PRs and Activities:
dune build @runtest
by dune runtest
in the Running Executables and Tests with Dune tutorial โ ocaml.org#1430The next step for the centralised package documentation is to serve the documentation of critical OCaml packages, including the OCaml manual and the Platform tools documentation. This requires a lot of work on odoc
to remove the blockers that prevents project from moving from their current documentation generator to odoc
. As an intermediate step, we'll be moving the opam documentation to OCaml.org's Learn area, so we can retire the frontend of opam.ocaml.org and redirect all the trafic to ocaml.org.
We've been working towards these goals this month. You can follow our progress on this PR.
Relevant PRs and Activities:
doc/pages
to be amenable for use on OCaml.org โ ocaml/opam#5593opam2web
to remove all package info, build only opam archive, keep public key, and create redirections from opam.ocamlorg to ocaml.org in a Caddyfile. Current WIP branch at https://github.com/sabine/opam2web/tree/strip_to_bare_minimumopam.ocaml.org/blog/feed.xml
to ocaml.org/blog/opam/feed.xml
Always with the aim to improve the learning experience, we're exploring how to generate JavaScript toplevels for all the OCaml packages (the ones that are JavaScript-compatible, that is).
This would enable a few very neat new features:
We're very excited at the possibilities this brings to improving the learning experience. Let us know what you think, and stay tuned for updates on our explorations!
Relevant PRs and Activities:
.cma
's, .cmi
's and toplevel .js
files โ ocaml-doc/voodoo#114This month, we're welcoming no less than 4 new contributors:
Thanks a lot to all the contributors this month! It's lovely to see more and more people making contributions to the site!
Relevant PRs and Activities:
status.json
โ voodoo#68, ocaml.org#1435Voodoo_serialize
module for data serialisation and deserialisation โ voodoo#103, ocaml.org#1442odoc
's styles to package documentation pages โ ocaml.org#1378data/
folder are now routinely checked by tarides/olinkcheck
.