Skip to content

ocaml/ocaml.org

Repository files navigation

OCaml.org

Actions Status

This repository contains the sources of the OCaml website. It is served at https://ocaml.org/.

Features

  • Integrated documentation and package management: The site combines the package management (currently opam.ocaml.org) with a new central documentation source (codenamed 'docs.ocaml.org') for all 14000+ opam packages directly within the ocaml.org site.

  • Responsive and accessible: The site design also takes into account modern web-design principles, restructuring the old content in accordance with methods that will present it more compellingly. It is a total redesign that modernises the look and feel of the webpage, as well as make it easier to navigate, and more accessible (particularly on mobile devices).

  • Separation of data editing from HTML/CSS generation: The data used in the website is stored in Yaml or Markdown so users can easily edit it and contribute to the website. We generate OCaml code from this data to serve the site content and and Ocurrent to automate the data pipelines. All the data used in the site can be found in ./data.

Getting started

You can setup the project with:

Before you begin, make sure you have opam (OCaml Package Manager) installed on your system. If you haven't installed it yet, you can follow the official installation instructions for your platform:

Once opam is installed, you can set up the project and run it with the following commands:

make switch

And run it with:

make start

See our contributing guide for more detailed instructions.

Maintainers

The OCaml.org maintainers team is composed of the following community members:

  • Anil Madhavapeddy (@avsm), Owner (University of Cambridge)
  • Thibaut Mattio (@tmattio), Lead Maintainer (Tarides)
  • Christine Rose (@christinerose), Maintainer (Tarides)
  • Cuihtlauac Alvarado (@cuihtlauac), Maintainer (Tarides)
  • Sabine Schmaltz (@sabine), Maintainer (Tarides)

The roles and responsibilities are explained in the governance, don't hesitate to have a look for more details.

We're always looking for new maintainers! If you're interested in helping us make OCaml.org the best resource to learn OCaml and discover the ecosystem, reach out to us!

Acknowlegement

Thank you to everyone who contributed to the development of this new version of the website!

In particular:

  • Ashish Agarwal (Solvuu)
  • Kanishka Azimi (Solvuu)
  • Richard Davison (Solvuu)
  • Patrick Ferris (OCaml Labs)
  • Gemma Gordon (OCaml Labs)
  • Isabella Leandersson (OCaml Labs)
  • Thibaut Mattio (Tarides)
  • Anil Madhavapeddy (University of Cambridge)

For the groundwork on rethinking the sitemap, user flows, new content, design, and frontend and package docs!

  • Jon Ludlam (OCaml Labs)
  • Jules Aguillon (Tarides)
  • Lucas Pluvinage (Tarides)

For the work on the package site infrastructure and UI!

  • Paul-Elliot Anglès d’Auriac (Tarides)

For meticulously going through the website to find issues.

  • Isabella Leandersson (OCaml Labs)
  • Asaad Mahmood (Tarides)

For the work on the designs and bringing them to life on the frontend!

  • Christine Rose (Tarides)
  • Isabella Leandersson (OCaml Labs)

For the work on the new content and reviewing the existing one!

We’d also like to thank the major funders who supported work on revamping the website: grants from the Tezos Foundation and Jane Street facilitated the bulk of the work. Thank you, and if anyone else wishes to help support it on an ongoing basis then donations to the OCaml Software Foundation and grants to the maintenance teams mentioned above are always welcomed.

Contributing

We'd love your help improving ocaml.org!

See our contributing guide in CONTRIBUTING.md

License

  • The source code is released under ISC
  • The data is released under CC BY-SA 4.0
  • Code examples within the content are released under UNLICENSE.
  • The OCaml logo is released under UNLICENSE.
  • The vendored files are listed with their licenses in LICENSE-3RD-PARTY

See our LICENSE for the complete licenses.

Code of Conduct

This project follows the OCaml Code of Conduct.