Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

The Caml Hump: Multimedia :: 2D graphics

Open Source

Scientific software
MLBrot [15-Nov-2010, version 1.00, Stable]
MLbrot is a program allowing to explore the Mandelbrot Set and produce nice fractal images. With some extra work, can produce videos. Can be helped by other computers, via internet, to speed up images calculations.

zlib/libpng License

Bindings with C libraries
OCaml-SFML [09-Aug-2010, version 0.03c, Beta]
OCaml binding for SFML (Simple and Fast Multimedia Library). SFML is a free multimedia library that provides low and high level access to graphics, input, audio, etc.
Author: Florent Monnier.


Major applications
Active-DVI [29-Aug-2011, version 1.10.0, Stable] Has a documentation
Active-DVI is a Unix-platform DVI previewer and a programmable presenter for slides written in LaTeX.
Native OCaml libraries
Archimedes [09-Oct-2012, version 0.4.15, Beta]
a high quality, platform-independent, and extensible 2D plotting library for OCaml.
Bindings with C libraries
Cairo-OCaml [29-May-2006, version 1.0.0, Stable]
Objective-Caml bindings for the Cairo library.
Author: Olivier Andrieu.
Bindings with C libraries
CamlImages [17-Nov-2009, version 3.0.2, Stable] Has a Godi package
An image processing library, which provides loading and saving various image formats with an interface for the Caml graphics library. It has also an interface with the freetype library to draw texts using truetype fonts.
Authors: Jun Furuse and Pierre Weis.
Bindings with C libraries
GD4O [25-Nov-2003, version 0.7, Alpha]
An OCaml interface to the GD graphics library, which is an ANSI C library for the dynamic creation of images. GD creates PNG and JPEG images, among other formats
Authors: Shawn Wagner and Matt Gushee.
Native OCaml libraries
GraphPS [31-May-2002, version 1.0, Stable] Has a documentation
GraphPS is an Objective Caml module that allows generating PostScript graphic. Its interface is almost identical to that of the Graphics module of the distribution, so that it is easy to switch.
Author: Pierre Weis.
Native OCaml libraries
ML-Postscript [10-Aug-2001, Development code] Has a documentation
A library to produce PostScript documents.
Author: Nicolas George.
Scientific software
Mlpost [20-Apr-2010, version 0.8.0, Beta] Has a documentation
An Ocaml interface to MetaPost, a powerful software to draw pictures to be embedded in LaTeX documents.
Native OCaml libraries
OCaml-ofc [03-Dec-2009, Development code]
An OCaml interface for Open Flash Chart 2.
Author: Florent Monnier.
Bindings with C libraries
OCamlSDL [05-Nov-2002, version 0.7.2, Beta] Has a Godi package
OCaml interface to the Simple DirectMedia Layer library. SDL is used for example by 3D games under Linux.
Bindings with C libraries
PLPlot [03-Mar-2008, version 5.8.0, Alpha]
Ocaml language bindings for plplot plotting library.


Bindings with C libraries
Bindings for Chipmunk [30-Apr-2008, version 0.01, Stable]
Chipmunk is a rigid body physics library, designed for 2D video games. It is intended to be fast, numerically stable, and easy to use.
Author: Florent Monnier.
Development tools
Cursico [16-Apr-2008, version 080415, Beta]
An OCaml curses editor to write coloured texts or draw things.
Toys - Examples
dispimg [28-Apr-2004, version 1.0.0, Beta]
Exceedingly simple, lightweight, image viewer, using lablgtk2.
Author: Shawn Wagner.
Scientific software
DrGeocaml [29-Apr-2005, version 2004-05-07, Beta] Has a documentation
A dynamic geometry software using the Gtk toolkit. Large use of the DrawingArea widget.
Scientific software
HHMM library and designer [16-Sep-2005, version 0.1.0, Beta]
Hhl is a library for Hidden Markov Models (HMM) and Hierarchical HMMs (HHMMs) in Ocaml. Both are probabilistic sequence models. Hhd is a designer that allows to design by hand models and save them quickly.
Author: Henri Binsztok.
Bindings with C libraries
ImageMagick Binding for OCaml [09-Dec-2005, version 0.15, Beta]
An interface to the library of ImageMagick.
Author: Florent Monnier.
Bindings with C libraries
OCaml-Xlib [13-Nov-2008, Alpha]
OCaml bindings for the Xlib library.Also includes GLX for OpenGL windowing.
Author: Florent Monnier.
Bindings with C libraries
Pocengine [14-Mar-2005, version 0.2.0, Beta] Has a documentation
A game engine to help creating more games more easily. The engine is written mainly in Ocaml with some XML and LUA.
Author: Julien Boulnois.


Native OCaml libraries
CamlPDF [15-Mar-2010, version 0.5, Beta] Has a documentation
CamlPDF is a library for reading, writing and manipulating PDF files and data.
Author: John Whitington.
Bindings with C libraries
ocalibs [17-May-2004, Development code]
Ocalibs is a collection of libraries for the ocaml programming language, designed to make windows game development easier. It will support DirectX for graphics and ODE for physics.
Author: Jere Sanisalo.
Development tools
svgconv [20-Jun-2007, version 1.0.5, Stable]
Svgconv is a tool to convert SVG paths into a C format that can be easily used with OpenVG. The tool converts SVG graphics into C source code that can be #included into your C program that wishes to use the path data.
Author: Janne Hellsten.

Other/Proprietary License

Native OCaml libraries
ChartPak [18-Dec-2003, version 1.0a3, Beta] Has a documentation
An easy-to-use library for dynamically generating business-oriented data visualizations for the web.
Author: Matt Gushee.


Toys - Examples
2D maze generator [14-Mar-2005, Beta]
A little OCaml program to generate random 2D mazes, render them using OpenGL and generate PostScript output.
Author: Jon Harrop.
Battle For Rashitoul [01-Sep-2003, Alpha]
A strategy/arcade games written in OCaml and C (SDL).
Author: POC Team.
Bindings with C libraries
GLCaml [25-Feb-2008, version 20080215, Beta] Has a documentationHas a tutorial
GLCaml ( is a compact set of Ocaml bindings to OpenGL versions 1.0 through 2.1, for Windows, Linux and OS-X. It also contains optional compact bindings for SDL (
Author: Elliot Oti.
graph [26-Jun-2007, version 1.0, Stable] Has a Godi package
A utility to print a pretty graph of a time series in an ansi terminal.
Author: Eric Stokes.
Native OCaml libraries
Htree [12-Dec-2002, version 1.0, Stable]
A generic library for browsing trees using hyperbolic geometry.
llpp [20-Mar-2013, version v15, Stable]
PDF viewer written in OCaml and mupdf.
Author: malc.
Mathplot [01-Oct-2001, version 0.8.4, Beta] Has a documentation
A GUI frontend for interactive graphing of functions. It also has a program to generate PostScript output.
Native OCaml libraries
Mlgrace [02-Nov-2004, version 0.1.0, Beta] Has a tutorial
A high-level interface to the Grace 2D plotting application. It makes extensive use of OCaml's labeled optional arguments, making the most common plotting operations quick and easy.
Author: Paul Pelzl.
Native OCaml libraries
MLGraph [27-Sep-2002, Stable] Has a documentation
An Objective Caml library to produce PostScript images.
Toys - Examples
N-edged undirected graphs [07-Mar-2008, Beta]
An OCaml program that outputs the set of N-edged graphs (polynema) to a standard .dot file.
O'Caml X Game library [11-Sep-2002, Beta]
A small framebuffer graphics library for O'Caml and X.
Author: Sami Makela.
Bindings with C libraries
OCaml-Allegro [07-Jan-2008, version 20071223, Development code]
This is an OCaml binding for Allegro. Allegro is a cross-platform library intended for use in computer games and other types of multimedia programming.
Author: Florent Monnier.
Bindings with C libraries
OCaml-Ming [07-Jan-2008, version 0.01a, Alpha]
OCaml bindings for the Ming library, a library to create Flash animations.
Author: Florent Monnier.