The code is broken up into a number of sections, some of which are dictated by next.js itself
Contains both pages and api endpoints
Contains api endpoints that are file system routed in exactly the same way that normal pages are.
Contains all the rest of the source code
Contains all the tests and test related utility code