# Directories, an ocaml library

**URL:** <https://discuss.ocaml.org/t/directories-an-ocaml-library/6753>\
**Category:** Ecosystem\
**Tags:** ocaml, library\
**Created:** [November 12, 2020, 10:27am UTC](https://discuss.ocaml.org/t/directories-an-ocaml-library/6753 "2020-11-12T10:27:31Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![OCamlPro](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/ocamlpro/32/2011_2.png) [@OCamlPro](https://discuss.ocaml.org/u/OCamlPro)\
**Post date:** [November 12, 2020, 10:27am UTC](https://discuss.ocaml.org/t/directories-an-ocaml-library/6753/1 "2020-11-12T10:27:31Z")

</div>

Hi,

We are pleased to present [directories](https://github.com/OCamlPro/directories), which is an[OCaml](https://en.wikipedia.org/wiki/OCaml) library that provides configuration, cache and data paths (and more!) following the suitable conventions on[Linux](https://en.wikipedia.org/wiki/Linux),[macOS](https://en.wikipedia.org/wiki/MacOS) and[Windows](https://en.wikipedia.org/wiki/Microsoft_Windows). It is inspired by similar libraries for other languages such as[directories-jvm](https://github.com/dirs-dev/directories-jvm).

The following conventions are used:

- [XDG Base Directory Specification](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html) and[xdg-user-dirs](https://www.freedesktop.org/wiki/Software/xdg-user-dirs/) on Linux
- [Known Folders](https://docs.microsoft.com/fr-fr/windows/win32/shell/known-folders) on Windows
- [Standard Directories](https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html#//apple_ref/doc/uid/TP40010672-CH2-SW6) on macOS

On Linux and macOS it has no dependency. On Windows, it depends only on[ctypes](https://github.com/ocamllabs/ocaml-ctypes).

You will find more information here: [https:](https://github.com/OCamlPro/directories)[//github.com/OCamlPro/directories](https://github.com/OCamlPro/directories)

---

<div class="post-metadata">

**Author:** ![ancolie](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/ancolie/32/6189_2.png) [@ancolie](https://discuss.ocaml.org/u/ancolie)\
**Post date:** [April 9, 2021, 10:48am UTC](https://discuss.ocaml.org/t/directories-an-ocaml-library/6753/2 "2021-04-09T10:48:47Z")

</div>

Hi !

We released directories 0.3 recently. In this release, we dropped the Windows dependency on ctypes-foreign and use ctypes.stubs instead. See [#10](https://github.com/OCamlPro/directories/pull/10)

This allowed us to clean the code and to remove [some dirty hacks](https://github.com/OCamlPro/directories/pull/11).

Enjoy ! 🙂
