Foundation

If the Code Craftsmen have produced anything useful, we realize that this is only possible because we are standing on the shoulders of giants. Software is not created in a vacuum: each piece is built on the code and ideas that have come before it. The following external software projects serve as a foundation for our code crafting tools. Although this list is by no means exhaustive, it serves as an overview of the software dependencies and provides links to relevant local and upstream documentation.

Documentation Generation Tools

Sphinx

Documentation generation tool originally created for the generating the Python language documentation

Doxygen

Documentation generation tool for extracting API documentation from C++ source files

Build Tools

GNU Make

The granddaddy of all build tools

Python Packages

Lark

A parsing toolkit for Python

C++ Utility Libraries

Eigen

Open-source C++ matrix library

libavoid

Cross-platform C++ library providing fast, object-avoiding orthogonal and polyline connector routing for use in interactive diagram editors

Qt

Cross-platform C++ library for constructing graphical user interfaces

TCLAP

Templatized C++ command-line parsing library

Python Development Tools

pip

The package installer for Python

virtualenv

Tool for creating isolated Python environments

virtualenvwrapper

Set of extensions to the virtualenv tool that includes wrappers for creating and deleting Python virtual environments

Compilers and Interpreters

Python 3

A popular, productive, high-level language

GCC

The GNU Compiler Collection

Operating Systems

Linux

A free and open-source operating system kernel

GNU

A Unix-like operating system that is free software

Ubuntu

An open-source operating system distribution built on Linux and GNU software

Xenomai

Free software project focused on building a real-time framework for the Linux platform

RTEMS

Embedded, open-source, real-time operating system

CONFIG_PREEMPT_RT

Linux patch set for improved real-time performance

POSIX

Portable operating system standard, based on Unix

Source Code Management

Git

A free and open source distributed version control system

Web Services

Python Package Index (PyPI)

A repository of software for the Python programming language

GitHub

A popular website for hosting open-source code repositories

Read the Docs

A popular website for hosting open-source software documentation