Skip to content

A curated list of awesome frameworks, libraries, tools, and resources for the OCaml programming language.

Notifications You must be signed in to change notification settings

awesomelistsio/awesome-ocaml

Repository files navigation

Awesome OCaml Awesome Lists

Ko-Fi   PayPal   Stripe   X   Facebook

A curated list of awesome frameworks, libraries, tools, and resources for the OCaml programming language.

Contents

Libraries

Core Libraries

  • OCaml Standard Library - The official standard library of OCaml.
  • Base - A Jane Street alternative to the OCaml standard library with additional features and improvements.
  • Core - An industrial-strength alternative standard library by Jane Street.
  • Containers - A lightweight extension of the OCaml standard library.

Data Structures and Algorithms

  • Batteries - An alternative standard library providing additional data structures and utilities.
  • OCamlgraph - A library for graph data structures and algorithms in OCaml.
  • Seq - A library providing a sequence data type with various utilities.

Web Frameworks

  • Opium - A lightweight and modular web framework for OCaml, inspired by Express.js.
  • Ocsigen Eliom - A powerful framework for full-stack web applications in OCaml.
  • Dream - A modern, type-safe web framework for building reliable web applications in OCaml.
  • Cohttp - A lightweight HTTP server and client library for OCaml.

Testing

  • Alcotest - A lightweight and colorful test framework for OCaml.
  • OUnit - A unit testing framework for OCaml, similar to JUnit.
  • QCheck - A property-based testing library inspired by Haskell's QuickCheck.

Concurrency and Parallelism

  • Async - A library for asynchronous programming, designed by Jane Street.
  • Lwt - A cooperative threading library for OCaml, providing lightweight threads.
  • Domainslib - A parallel programming library for OCaml's multicore runtime.

Graphics and Visualization

  • Graphics - The OCaml Graphics library for basic graphics operations.
  • Vg - A declarative 2D vector graphics library for OCaml.
  • Plotkic - A simple and lightweight plotting library for OCaml.

Tools

  • OCamlFormat - A tool for automatically formatting OCaml code.
  • Merlin - An editor helper that provides autocompletion and type-checking for OCaml.
  • utop - An enhanced interactive toplevel (REPL) for OCaml with autocompletion.
  • dune - A popular build system for OCaml projects, focused on simplicity and speed.

Build Tools and Package Managers

  • OPAM - The OCaml Package Manager, a tool for managing OCaml libraries and dependencies.
  • Dune - A build system for OCaml, designed for reliability and speed.
  • esy - A package manager for native projects, including OCaml.

IDEs and Editors

Learning Resources

Books

  • Real World OCaml by Yaron Minsky, Anil Madhavapeddy, and Jason Hickey - A practical book on OCaml programming.
  • OCaml from the Very Beginning by John Whitington - An introduction to OCaml for beginners.
  • Functional Programming in OCaml by Michael R. Clarkson - A book focused on functional programming techniques in OCaml.
  • Unix System Programming with OCaml by Xavier Leroy - A book on system programming using OCaml.

Community

Contribute

Contributions are welcome!

License

CC0

About

A curated list of awesome frameworks, libraries, tools, and resources for the OCaml programming language.

Topics

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages