Quantcast
Channel: Tech Tutorials
Viewing all articles
Browse latest Browse all 938

Angular Project Structure With File Description

$
0
0

When you create an Angular project using Angular CLI ng new command , the CLI installs the necessary Angular npm packages and other dependencies in a new workspace. The workspace root folder contains various support and configuration files, and a README file with generated descriptive text that you can customize. This article gives an overview of the generated files with some explanation about those files.

File groups

The generated files for the Angular project can be divided into following groups:

  1. Workspace configuration files
  2. Application source files
  3. Application configuration files
  4. End-to-end test files

Workspace configuration files

The top level of the workspace contains workspace-wide configuration files, configuration files for the root-level application, and subfolders for the root-level application source and test files.

WORKSPACE CONFIG FILESPURPOSE
.editorconfigConfiguration for code editors so that consistent coding styles is maintained for multiple developers working on the same project across various editors and IDEs
.gitignoreSpecifies intentionally untracked files that GIT should ignore.
README.mdIntroductory documentation for the root app.
angular.jsonCLI configuration defaults for all projects in the workspace, including configuration options for build, serve, and test tools that the CLI uses, such as TSLint, Karma and Protractor.
package.jsonConfigures npm package dependencies that are available to all projects in the workspace.
package-lock.jsonProvides version information for all packages installed into node_modules by the npm client.
src/Source files for the root-level application project.
node_modules/Provides npm packages to the entire workspace. Workspace-wide node_modules dependencies are visible to all projects.
tsconfig.jsonDefault TypeScript configuration for projects in the workspace.
tslint.jsonDefault TSLint configuration for projects in the workspace.
e2e/Contains source files for a set of end-to-end tests.

Application source files

Files at the top level of src/ support testing and running your application. Subfolders contain the application source and application-specific configuration.

APP SUPPORT FILESPURPOSE
app/Contains the component files in which your application logic and data are defined.
assets/Contains image and other asset files to be copied as-is when you build your application.
environments/Contains build configuration options for particular target environments. By default there is an unnamed standard development environment and a production ("prod") environment. You can define additional target environment configurations.
favicon.icoAn icon to use for this application in the bookmark bar.
index.htmlThe main HTML page that is served when someone visits your site. The CLI automatically adds all JavaScript and CSS files when building your app, so you typically don't need to add any <script> or <link> tags here manually.
main.tsThe main entry point for your application. Compiles the application and bootstraps the application's root module (AppModule) to run in the browser.
polyfills.tsProvides polyfill scripts for browser support.
styles.sassLists CSS files that supply styles for a project. The extension reflects the style preprocessor you have configured for the project.
test.tsThe main entry point for your unit tests, with some Angular-specific configuration. You don't typically need to edit this file.

The app/ folder, inside the /src folder, contains your project's logic and data. Angular components, templates, and styles go here.

SRC/APP/FILESPURPOSE
app/app.component.tsDefines the logic for the app's root component, named AppComponent. The view associated with this root component becomes the root of the view hierarchy as you add components and services to your application.
app/app.component.htmlDefines the HTML template associated with the root AppComponent.
app/app.component.cssDefines the base CSS stylesheet for the root AppComponent.
app/app.component.spec.tsDefines a unit test for the root AppComponent.
app/app.module.tsDefines the root module, named AppModule, that tells Angular how to assemble the application. Initially declares only the AppComponent. As you add more components to the app, they must be declared here.

Application configuration files

The application-specific configuration files for the root application reside at the workspace root level.

APPLICATION-SPECIFIC CONFIG FILESPURPOSE
browserslistConfigures sharing of target browsers and Node.js versions among various front-end tools.
karma.conf.jsApplication-specific Karma configuration.
tsconfig.app.jsonApplication-specific TypeScript configuration, including TypeScript and Angular template compiler options.
tsconfig.spec.jsonTypeScript configuration for the application tests.
tslint.jsonApplication-specific TSLint configuration.

End-to-end test files

An e2e/ folder at the top level contains source files for a set of end-to-end tests that correspond to the root-level application, along with test-specific configuration files.

END-TO-END TEST FILESPURPOSE
src/End-to-end tests for the application.
protractor.conf.js Test-tool config
tsconfig.jsonTypeScript config inherits from workspace

Reference- https://angular.io/guide/file-structure

That's all for this topic Angular Project Structure With File Description. If you have any doubt or any suggestions to make please drop a comment. Thanks!


Related Topics

  1. How to Install Node.js and NPM in Windows
  2. How to Pass Command Line Arguments in Eclipse
  3. Creating a Maven Project in Eclipse
  4. Spring Example Program Using Automatic Configuration
  5. Spring Web MVC Example With Annotations And XML Configuration

You may also like-

  1. Serialization in Java
  2. Object Cloning in Java
  3. Nested Class And Inner Class in Java
  4. Garbage Collection in Java
  5. String Vs StringBuffer Vs StringBuilder in Java
  6. Array in Java
  7. Lazy Initializing Spring Beans
  8. Introduction to Hadoop Framework

Viewing all articles
Browse latest Browse all 938

Trending Articles