This directory contains various Python modules used to support servo
development.

# `servo`

servo-specific python code e.g. implementations of mach commands. This
is the canonical repository for this code.

# `tidy`

servo-tidy is used to check licenses, line lengths, whitespace, ruff on
Python files, lock file versions, and more.

# `wpt`
servo-wpt is a module with support scripts for running, importing,
exporting, updating manifests, and updating expectations for WPT
tests.