How do I use files like Makefiles, dune, _tags, .ocamlinit, and other to make a proper OCaml project?
What do I have to do to be able to use online libraries into my projects?
And finally, what manners should I adopt while coding ? (ie modular programming?)
I want to be able to easily run tests, compile, and setup a new project.
Maybe already existing tools could help.
I’m on Ubuntu and I’m coding with Emacs with Tuareg installed for the moment.
A complete project comprises of several (opinionated) files like Makefile, CI, tests and so on. That is why dune init is not a complete solution. A skeleton generator is convenient but it is difficult to maintain by itself. Hence why I am not too convinced by them and think a collection of generic GitHub repos is a good idea (or one repo with several branches for various use cases). There could be a command that clones and instantiates them.
There are a few options, all of which are “proper”: running test executables with dune, dune cram tests, alcotest, dune inline tests with ppx_inline_tests, dune inline tests with qtest, qcheck, coverage reports with bisect_ppx, etc.
If you want us to chime in on the pros and cons of our favourites, I would suggest starting a separate thread for testing.