Common functions used throughout the program, generic enough to be used in several places, not fitting into any specific one.
Functionality related to configuration; verifying it, correcting it, reading it from/writing it to disk, and parsing it from command-line arguments.
Functions related to reading from a configuration file, broken out of kameloso.config to avoid cyclic dependencies.
A collection of constants used throughout the program.
Dummy main module so all the real files get tested by dub.
Functions related to IRC colouring and formatting; mapping it to ANSI terminal such, stripping it, etc.
Module for the main Kameloso instance struct.
Contains the custom KamelosoLogger class, used to print timestamped and (optionally) coloured logging messages.
The main module, housing startup logic and the main event loop.
Functions used to send messages to the server.
Functionality related to connecting to a server over the Internet.
Functions that deal with OS- and/or platform-specifics.
Bits and bobs to register plugins to be instantiated on program startup/connect.
POD structs, broken out of kameloso.kameloso to avoid cyclic dependencies.
Functions related to (formatting and) printing structs and classes to the local terminal, listing each member variable and their contents in an easy-to-visually-parse way.
SemVer information about the current release.
Bits and bobs that automate downloading SSL libraries and related necessities on Windows.
Various functions that do string manipulation.
Helpers to set up a terminal environment.
Structures and functions related to concurrency message passing, threads and Fibers.
Various functions that deal with Durations.
Various traits that are too kameloso-specific to be in lu.
kameloso is an IRC bot based on mixins and UDAs.
See the kameloso.plugins package for available plugins.
Additionally, see the homepage at https://github.com/zorael/kameloso for help on getting started.