The base folder structure of the project is simple, easy to understand, and great for smaller applications:
. e2e/ . src/ .. app/ .. assets/ .. environments
As you can guess, the bulk of the application code will go into the app folder. Within this folder, we will create modules for the different functional parts and features of our application. Within each of those modules, we'll organize elements by type (for example, components, entities, services, and more). This will help us to better structure our code.
The Angular structure is based on the LIFT principle described in the official style guide: https://angular.io/guide/styleguide#lift.
LIFT stands for the following:
- Locate code easily
- Identify code at a glance
- Flattened structure as long as possible
- Try to stay DRY
The good news is that Angular is rather flexible and doesn't enforce its own structure for all applications. Larger ones will go further and create different libraries and projects, but this will do for MediaMan.