OCaml Packages
Explore thousands of open-source OCaml packages with their documentation
Publish a Package
opam
The OCaml Package Manager
Opam is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow
-
4593
Packages
-
47
New packages this month
-
56
Updates this week
packages
Most Used
odoc
OCaml Documentation Generator
alcotest
Alcotest is a lightweight and colourful test framework
lwt
Promises and event-driven I/O
fmt
OCaml Format pretty-printer combinators
logs
Logging infrastructure for OCaml
New Packages
cascade
CSS generation and manipulation library for OCaml
modelkit-parallel
Bounded parallel execution for ModelKit
modelkit
Portable classical machine learning workflows for OCaml
floatml
Floats (f16, f32, f64, f128) for OCaml
conf-libusb
Virtual package relying on libusb
Recently Updated
cascade
CSS generation and manipulation library for OCaml
coccinelle
Coccinelle is a C source code matching and transformation engine
yamlx
Pure-OCaml YAML 1.2/1.1 parser with a lossless, comment-preserving AST
ai-sdk-react
Melange bindings for @ai-sdk/react
ocaml-ai-sdk
OCaml AI SDK - Provider abstraction for AI models
stable ecosystem
Focus on Your Code, and opam Takes Care of Distributing It
Our users have the highest standards for the OCaml ecosystem to run mission-critical applications across a variety of operating systems, and they expect that a package that compiles today will still work a decade from now
Continuous Integration
Before any package update, we run sandboxed matrix builds for boundaries of the dependencies and for each of the dependent packages. A package publication will never break the rest of the ecosystem.
State of the Art
Opam supports publishing multiple versions of packages simultaneously to specify the version constraints, so only compatible revisions are chosen for a build. It comes with a performant constraint solver, a flexible CLI, a well-specified metadata format, and an easy access to the package manager logic via OCaml libraries.
Package Stability
The opam project and package repository is maintained by a team of developers who ensure that everything is not only running smoothly, but also curated to maintain a high degree of metadata quality. This makes it one of the most stable package repositories available today.
documentation
Automatic Documentation Generation
Every package published to opam gets its documentation built and hosted automatically on this website.
How It Works
Documentation is generated using odoc, the OCaml documentation tool. When you publish a package, a continuous integration pipeline called ocaml-docs-ci automatically picks it up, builds the documentation for all versions, and makes it available here.
The pipeline is built with OCurrent, a workflow specification language written in OCaml that powers much of the OCaml ecosystem's CI infrastructure.
Writing Good Documentation
To make the most of automatic documentation generation, add doc-comments to your .mli files
using the odoc syntax. These comments will be rendered as formatted documentation with cross-references to other modules and packages.
Learn more about writing documentation in the odoc documentation.
community
Start Contributing
Learn how to publish your first Opam package today and make it available to the rest of the community.