New programmer's guide for Ocsigen

A new programmer’s guide for Ocsigen has just been released here.
It describes in one page everything you need to know to become a fully operational OCaml Web and mobile developer.

Ocsigen is a complete framework for developing Web and mobile apps in OCaml. You can start easily with a very basic server side Web page, and make it evolve into a complex client-server Web and mobile app.

Main features:

  • Ocsigen has a very powerful, yet simple, service identification mechanism to program server-side page generation,
  • It implements continuation-based Web programming,
  • It includes a compiler from OCaml to JavaScript to run your OCaml programs in a browser,
  • It extends OCaml into a multi-tier language, allowing to mix client and server code in the same files, thus simplifying the communication between the two,
  • It makes it possible to build your Android and iOS apps from the exact same code as your Web app,
  • It includes a powerful session mechanism
  • HTML pages are statically type-checked
  • Ocsigen allows to insert reactive page elements, using Functional Reactive Programming
  • Several native libraries are available: A set of interface widgets designed to be compatible with multi-tier programming, an internationalisation library, user management, etc.
  • Ocsigen is free/open-source software (LGPL + OCaml linking exception)
  • Extensive documentation is available
  • Ocsigen originated from a research project by Université de Paris and CNRS, is supported by Inria, and now maintained by several people, mostly at Be Sport, or Jane Street Capital.
  • The project is mature, used in production by the Be Sport social network for its Web and mobile apps (Android, iOS). More than 60 people have contributed over the past 17 years.

A couple of questions to the Ocsigen developers:

  • What’s new in Eliom 7? The CHANGES file in the project has not been updated for 7.0
  • I see that ocsigenserver has switched to cohttp. How far are we from being able to run it under Mirage?
1 Like

Eliom 7 is a version bump with minor but incompatible interface changes.
We haven’t tried running on mirage, if you give it a try let us know how it goes!

1 Like

This is very helpful, much more digestible.

Aside, any plans to redesign the site for more mobile friendliness?

Hi! The site is already quite responsive. I think the main remaining problem is that preformatted text (code lines) do not wrap. I tried to limit the width of code blocks. Is it better now?
Do you see other problems?

That’s much better now. I don’t have to awkward zoom out to view the page.

1 Like

Great job! This helps a lot! Thank you for your work!

Thanks. We will continue to improve the documentation. Next step: clean API doc (and probably switch to odoc). Any help appreciated :wink:

1 Like