Key Project Values¶
The following key values of the Chaos Toolkit reflect the mindset the community has when engineering the Chaos Toolkit project.
The Chaos Toolkit aims at being a simple piece of technology both from a user and developer perspective.
To achieve simplicity, the Chaos Toolkit comes as a command line interface driven by a description file. As a user, this means no code and no need to learn a programming language. As a developer, this reduces the functional surface area to consider.
The Chaos Toolkit does not wish to be a monolith and strives to be extended to fully reach its goal through community driven efforts.
By using a description file, the implementation is not prescribed by the Chaos Toolkit project. Although we fully expect the community to eventually settle on certain implementations of probes and actions.
We believe code readability is a factor for positive maintenance and evolutivity.
Readable code never goes out of fashion. As the code of the Chaos Toolkit is mostly written in Python, best practices such as defined in PEP8.
Although not strictly speaking referring to the technological aspect of the project, having diversity in the community will contribute to a better project overall.