Next-level full-stack development

Write your app once — deploy on Web, Android, iOS

Unique multi-tier architecture: client and server in a single program

Type-safe from database to UI — catch errors before they happen

Runs natively in WebAssembly (with JavaScript fallback)

Get started now!

Events

2024-09-16

Come and learn Ocsigen at FUN OCaml in Berlin!

slides

Eliom

Client and server code that compile together

Eliom lets you write client and server code in the same file, and as a single program. The compiler checks that they stay consistent — no more broken APIs!

A single codebase compiles to a Web app and to mobile apps for iOS and Android.

Multi-tier

Js_of_ocaml / Wasm_of_ocaml

Your OCaml code, running in the browser at near-native speed

Compile any OCaml program to JavaScript or WebAssembly. WASM delivers near-native performance; JS ensures compatibility with all browsers.

Works directly from OCaml bytecode — use any OCaml library without recompiling. Seamless interop with JavaScript libraries.

let fib num =
  let rec aux num prec2 prec =
    if num = 0
    then prec
    else
      aux (num - 1) prec (prec + prec2)
  in aux num 1 1
function fib(num)
 {var num$0=num,prec2=1,prec=1;
  for(;;)
   {if(0 === num$0)return prec;
    var
     prec$0=prec + prec2 | 0,
     num$1=num$0 - 1 | 0,
     num$0=num$1,
     prec2=prec,
     prec=prec$0;
     continue}}
function(d){var b=d,c=1,a=1;for(;;){if(0===b)return a;var b=b-1|0,e=a+c|0,c=a,a=e;continue}};

Main projects

Js_of_ocaml

Compile OCaml to JS and WebAssembly. Run in any browser.

Eliom

Write client and server as one program. Deploy to Web and mobile.

Server

Production-ready Web server with native OCaml integration.

Lwt

Concurrent programming made simple — no callback hell.

Ocsipersist

Key-value store for data that survives server restarts.

Tyxml

Type-safe HTML/SVG generation. Invalid markup won't compile.

Ocsigen Toolkit

Ready-to-use UI widgets for Web and mobile apps.

Start

Complete starter app with users, notifications, and mobile support.