Awesome OCaml Awesome

Everything you'll ever need on the road to mastering OCaml.

A curated list of references to awesome OCaml tools, frameworks, libraries and articles. Additionally there is a collection of freely available books, papers and presentations.

Your favorite package is not listed? Fork and create a Pull Request to add it!

If you are beginner and want to learn the basics of OCaml programming here is the Beginner's guide to OCaml beginner's guides.

Contents


Community

Algorithms and Data Structures

Application Libraries

Blogs

Books

Code Analysis and Linters

Compilers and Compiler Tools

Concurrency

Two concurrency libraries exist in OCaml: Lwt and Async. They provide very similar functionality but make radically different decisions with regards to error handling and internal implementation details (see the links below for more details). Real World OCaml uses Async but a version of the code examples translated to Lwt is also available.

Databases

Datetime

Developer Tools

Exercises

Formal Software Verification

General

Graphics

User Interface

Logging

Messaging

Metaprogramming

Mobile Applications

Networking

Online Courses

Package Management

Parallelism

(Note: Sorted from the easier to use to the more flexible.)

Questions

Science and Technical Computing

Regular Expressions

Security and Cryptography

Note: The differences between nocrypto and cryptokit cryptographic libraries are described in the following blog post: OCaml-TLS: building the nocrypto library core.

Semantic Technology

Serialization

System Programming

Testing

Web Development


Inspired by awesome projects line. Discover more awesomeness :sparkles:.