# Packages
Package command provides commands that can be pushed into a command queue for the controller to consume.
Package config provides the config file schema and utilities to load the config into concrete outlet and outlet group types.
Package controller provides a controller that handles all outlet commands sequentially.
Package outlet provides types for the outlet and outlet group as well as tools to interact with them and to manage their state.
Package schedule provides types to define time switch schedule intervals for outlets.
Package statedrift provides a detector for listening to rf codes sent out by anything else than rfoutlet (e.g.
Package timeswitch implements the time switch logic for outlets.
Package websocket provides the http handler, client and hub for managing the websocket connections of clients using rfoutlet.