Angular Project Structure

screenshot of Angular Project Structure

A modular and domain-driven structure for Angular projects

Overview

The Angular Project Structure is a repository that proposes a new directory structure for Angular applications. The main goal of this structure is to separate the domain/feature layer from the Angular infrastructure concepts. By creating an application context bundle, all domain/feature modules are grouped together, along with a shared module, while infrastructure modules and files are kept outside this scope. This structure aims to provide a clear separation between application-related files and other files such as config and core modules.

Features

  • Domain/feature layer separation: The structure separates the domain/feature layer from the Angular infrastructure concepts, creating an application context bundle.
  • Shared module: The structure includes a shared module that can be used across different domain/feature modules.
  • Clear space for non-domain files: Files that are not bound to the application domain or infrastructure, such as config and core modules, are kept outside the application directory.

Summary

The Angular Project Structure repository proposes a new directory structure for Angular applications, aiming to separate the domain/feature layer from the Angular infrastructure concepts. By grouping domain/feature modules into an application context bundle and keeping infrastructure modules and files separate, this structure provides a clearer organization of the codebase. The repository provides instructions for adding this structure to a new Angular application created using the Angular CLI.