This program depends on the following excellent pieces of software:
Python: Orthogram is implemented in the Python programming language. This project would probably not exist without Python helping along the way with its ease of use and availability of high quality libraries.
NetworkX: Very comprehensive network analysis library. Implemented in pure Python, so easy to install and convenient to use. Orthogram utilizes graphs to route the connections around the blocks and minimize their overlapping with each other.
Cassowary: Linear constraint solver implemented in pure Python. Orthogram uses this to arrange the elements in the drawing.
PyYAML: Simple to use, efficient YAML parser. Orthogram uses this to read the diagram definition files.
Sphinx: The Python documentation generator. This documentation is built with Sphinx.
The following programs improved the development experience of the author a lot: