RFC3986 URI parsing library for OCaml
99
stars
452
commits
OCaml
primary language
Nov 24, 2025
updated
This is an OCaml implementation of the RFC3986 specification for parsing URI or URLs.
The OPAM package manager can be used to install this library from source.
opam install uri
You can build the source code locally via the dune build system.
opam install uri --deps-only
eval `opam config env`
dune build
dune runtest
will install the dependencies via OPAM, build the library and then run the tests in the lib_test/ directory.
Once installed, there are three ocamlfind packages available for your use:
uri - the base Uri moduleuri-re - the legacy implementation
At the beginning, uri used re to parse a string. Since 4.0.0,
we use angstrom - if something breaks with uri.4.0.0, you should compare
with uri-re and submit an issue. uri-re is deprecated and it will be
removed on the next release (see #150)uri.top - the toplevel printers for use with utopuri-sexp - provides converters to and from s-expressions (via a Uri_sexp.t type alias)uri.services - the Uri_services module that provides the equivalent of services(5)uri.services_full - the Uri_services_full module that provides a complete copy of the /etc/services file. This is quite large and normally not needed.OCaml
99.8%
RFC3986 URI parsing library for OCaml
99
stars
452
commits
OCaml
primary language
Nov 24, 2025
updated
This is an OCaml implementation of the RFC3986 specification for parsing URI or URLs.
The OPAM package manager can be used to install this library from source.
opam install uri
You can build the source code locally via the dune build system.
opam install uri --deps-only
eval `opam config env`
dune build
dune runtest
will install the dependencies via OPAM, build the library and then run the tests in the lib_test/ directory.
Once installed, there are three ocamlfind packages available for your use:
uri - the base Uri moduleuri-re - the legacy implementation
At the beginning, uri used re to parse a string. Since 4.0.0,
we use angstrom - if something breaks with uri.4.0.0, you should compare
with uri-re and submit an issue. uri-re is deprecated and it will be
removed on the next release (see #150)uri.top - the toplevel printers for use with utopuri-sexp - provides converters to and from s-expressions (via a Uri_sexp.t type alias)uri.services - the Uri_services module that provides the equivalent of services(5)uri.services_full - the Uri_services_full module that provides a complete copy of the /etc/services file. This is quite large and normally not needed.OCaml
99.8%