This page lists the tools that are used and for which purpose they are used. This list is intended for reference, so it is full of hyperlinks that can point you to the right location.
Specific tools used in the Ampersand project
Tool
Purpose (the hyperlink navigates to the section in this book)
a docker-image in which we keep the latest version of the Ampersand compiler in executable form. It resides in docker-hub.
all
Ampersand compiler
An executable that is used to generate software, documentation, and analyses from Ampersand-scripts. It is embedded into the Ampersand image and into RAP3. There exist multiple instances, so we cannot hyperlink to it.
a service that generates executable files for Windows automatically, each time a new release of Ampersand appears. It releases the Ampersand compiler for Windows automatically, provided all automated tests have passed
a service, which runs automated tests on every commit of the Ampersand repository on Github. Only the successfully tested commits on the releases branch are released
a text editor that has long been used in the Ampersand project, but not any more. A syntax coloring mechanism for Ampersand still exists. This editor has been superseded by VScode, because it is being supported by a much larger community.
the platform for technology agnostic, fully automated deployment of services, which we use to deploy the Ampersand compiler and applications developed in Ampersand.
the versioning system in which all source code is kept. It enables us to work collaboratively on multiple features in parallel, without interfering each other's work.
a simple, standardized, format for communicating data structures. It is used to communicate data from the Ampersand-compiler to the generated application.
a platform for configuring and managing deployed services (such as RAP) in an operational environment. Kubernetes is not being used yet in production instances of Ampersand.
a typesetting system, which we use to generate PDF's with. At the moment MarkDown is the preferred markup language, so LaTeX's role in the Ampersand project is decreasing.
a build automation environment for Haskell that we use to build the Ampersand compiler with. It guarantees consistency of module dependencies within the Haskell world.