- components alway control the size and position of child components
- components aren't extended, they are duplicated
- components are always unaware of their surroundings, and are designed and developed as self contained blocks.
- states are toggled with modifiers