The project is divided into several modules to ensure separation of concerns and improve build times.