magic-mime

Map filenames to common MIME types
README

This library contains a database of MIME types that maps filename extensions
into MIME types suitable for use in many Internet protocols such as HTTP or
e-mail. It is generated from the mime.types file found in Unix systems, but
has no dependency on a filesystem since it includes the contents of the
database as an ML datastructure.

For example, here's how to lookup MIME types in the utop REPL:

#require "magic-mime";;
Magic_mime.lookup "/foo/bar.txt";;
- : bytes = "text/plain"
Magic_mime.lookup "bar.css";;
- : bytes = "text/css"

Internals

The following files need to be edited to add MIME types:

  • mime.types: this is obtained by synching from the Apache Foundation's
    mime.types
    in the Apache Subversion repository.

  • x-mime.types: these are the extension types, so non-standard x- prefixes are used here.

  • file.types: full filenames of common occurrences that are useful to map onto a MIME type.
    OCaml-specific things like opam files show up here.

More information

Install
Published
20 Jul 2021
Sources
magic-mime-v1.2.0.tbz
sha256=f121b67500f8dd97e2fc9fd5d01c7325e4c84bc5c0237442779fbd6fa20694f5
sha512=f55e39b11e145f97eaec6796cb99bdca3ac62130995fc36f82fdd097ab5ed6ff9130c671546b76b7c21777284977c02f6b6f74d5549a367481210342708886da
Dependencies
ocaml
>= "4.03.0"
Reverse Dependencies