# Traitlets

Release: | 4.0.0
Date: | September 27, 2015

Traitlets is a framework that lets Python classes have attributes with type checking, dynamically calculated default values, and ‘on change’ callbacks.

The package also includes a mechanism to use traitlets for configuration, loading values from files or from command line arguments. This is a distinct layer on top of traitlets, so you can use traitlets in your code without using the configuration machinery.

- Using Traitlets
  - Dynamic default values
  - Callbacks when traitlets change
- Trait Types
  - Numbers
  - Strings
  - Containers
  - Classes and instances
  - Miscellaneous
- Defining new trait types
- Configurable objects with traitlets.config
  - The main concepts
  - Configuration objects and files
  - Configuration files inheritance
  - Class based configuration inheritance
  - Command-line arguments
  - Design requirements