Sphinx is a tool that translates a set of reStructuredText source files into various output formats, including HTML, ePub, LaTeX and plain text. Sphinx was originally created for the Python documentation, but it has excellent facilities for the documentation of software projects in a range of languages.