# Code
This section stores information about the design and implementation of the plugin's source code.
## Structure of the code
- [[Structure of the code]] - the directory structure of the source code
## Documenting the code
- [[Generating documentation of the code]] - browse the source code interactively, and see class hierarchies.
## Common processes
- How do I add a new field/property to:
- the [[How do I add a new field to the Task class|Task class]]
- the [[How do I add a new field to the ListItem class|ListItem class]], which is the base class of `Task`.
- and how do I decide whether the new field should go in [[How do I add a new field to the Task class#Should the new field be added to Task or ListItem?|Task or ListItem]]?
- [[How do I add a new task filter]]
- [[How do I add one-click support for new themes or snippets for custom statuses]]
- [[How does Tasks handle status changes]]
- [[How do I use Moment in src]] - how to use date and time values
- [[How do I see circular dependencies]] - in source files