Defining standard OCaml development lifecycle processes

You can do dune init proj as well as dune init {lib,exe} which gives something like what you want.

Differences:

  • No ml files in lib
  • (slightly oddly) no dune-project
  • Adds a test directory

I use it relatively frequently. Personally I think it would be nice if it additionally generated (by default):

  • A dune-project with (generate_opam_files true) and enough other info to make that work
  • A .ocamlformat file
7 Likes