{"id":2625,"date":"2017-06-18T10:00:00","date_gmt":"2017-06-18T04:30:00","guid":{"rendered":"https:\/\/code4developers.com\/?p=2625"},"modified":"2018-09-04T20:52:47","modified_gmt":"2018-09-04T15:22:47","slug":"angular-4-project-structure","status":"publish","type":"post","link":"https:\/\/code4developers.com\/angular-4-project-structure\/","title":{"rendered":"Angular 4 Project Structure"},"content":{"rendered":"<h3 id=\"introduction\">Introduction<\/h3>\n<p>In previous article we learned about Angular 4 Installation. You can find that article on <a href=\"https:\/\/code4developers.com\/angular-4-installations\/\">https:\/\/code4developers.com\/angular-4-installations\/\u00a0<\/a>. This article describes the project structure of Angular 4 application which Angular CLI created for us. I have already created <strong>ANGULAR4DEMO<\/strong> project in my previous article, so we will use that project to get idea about project structure.<\/p>\n<p><!--more--><\/p>\n<h3 id=\"project-structure\">Project Structure<\/h3>\n<p>When we open the Angular 4 project in editor, we can see three main folders e2e, node_modules, src and different configuration files.<\/p>\n<p><img  loading=\"lazy\"  decoding=\"async\"  data-attachment-id=\"2628\"  data-permalink=\"https:\/\/code4developers.com\/angular-4-project-structure\/1-2\/\"  data-orig-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?fit=271%2C313&amp;ssl=1\"  data-orig-size=\"271,313\"  data-comments-opened=\"1\"  data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\"  data-image-title=\"Angular 4 Folder Structure\"  data-image-description=\"\"  data-image-caption=\"\"  data-medium-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?fit=260%2C300&amp;ssl=1\"  data-large-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?fit=271%2C313&amp;ssl=1\"  class=\"alignnone size-full wp-image-2628 pk-lazyload\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQ8AAAE5AQMAAAC0wjfNAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAACFJREFUaN7twTEBAAAAwqD1T20MH6AAAAAAAAAAAAAA4GIqywABrdjsCwAAAABJRU5ErkJggg==\"  alt=\"\"  width=\"271\"  height=\"313\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 271px) 100vw, 271px\"  data-pk-src=\"https:\/\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png\"  data-pk-srcset=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?w=271&amp;ssl=1 271w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?resize=260%2C300&amp;ssl=1 260w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?resize=120%2C139&amp;ssl=1 120w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?resize=90%2C104&amp;ssl=1 90w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?resize=240%2C277&amp;ssl=1 240w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1-1.png?resize=180%2C208&amp;ssl=1 180w\" ><\/p>\n<p>&nbsp;<\/p>\n<table border=\"1px\">\n<tbody>\n<tr>\n<td width=\"163\"><strong>File<\/strong><\/td>\n<td width=\"475\"><strong>Purpose<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"163\">tslint.json<\/td>\n<td width=\"475\">Used for building application with consistent code style. We can change the configuration that defines how our application should be build.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">tsconfig.json<\/td>\n<td width=\"475\"><strong>ts<\/strong> stands for typescripts. Typescripts are used for developing angular\u00a0 \u00a0applications since Angular 2 came out. It contains the configurations for typescripts.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">protector.conf.js<\/td>\n<td width=\"475\">It contains testing configurations.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">README.md<\/td>\n<td width=\"475\">Is contains basic documentation for your project, pre-filled with CLI command information. Just make sure to enhance it with project documentation so that anyone checking out the reputation can build your application.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">package.json<\/td>\n<td width=\"475\">It contains all the dependency modules which are required for our application. It\u2019s up to you which module you want to use. if you want to use _js library or any other library just add name and version of that dependency\u00a0 library in package.json and execute command npm install. It will execute all the dependencies and download in node_modules folder.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">karma.conf.js<\/td>\n<td width=\"475\">It has configuration for writing unit tests.karma is the test runner and it uses jasmine as framework. These both tester and framework are developed by angular team for writing unit tests.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">.gitignore<\/td>\n<td width=\"475\">We can define all the folders and files which we want to exclude from our repository in our git.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">editor.config<\/td>\n<td width=\"475\">It contains the setting of your editor. It has parameter like style, size of character, line length.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">angular-cli.json<\/td>\n<td width=\"475\">It contains all the configuration of Angular 4 Project. It has project name, root directory as source folder (src) name which contain all the components, services, directives, pipes, starting point of our application (index.html file), starting point of typescript file (main.ts), style files (style.css) .<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">src\/*<\/td>\n<td width=\"475\"><img  loading=\"lazy\"  decoding=\"async\"  data-attachment-id=\"2629\"  data-permalink=\"https:\/\/code4developers.com\/angular-4-project-structure\/2-0\/\"  data-orig-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?fit=273%2C292&amp;ssl=1\"  data-orig-size=\"273,292\"  data-comments-opened=\"1\"  data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\"  data-image-title=\"2.0\"  data-image-description=\"\"  data-image-caption=\"\"  data-medium-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?fit=273%2C292&amp;ssl=1\"  data-large-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?fit=273%2C292&amp;ssl=1\"  class=\"alignnone size-full wp-image-2629 pk-lazyload\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAREAAAEkAQMAAAAy7ZfTAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAACFJREFUaN7twQENAAAAwqD3T20ON6AAAAAAAAAAAAAAvg0pEAABWPREsAAAAABJRU5ErkJggg==\"  alt=\"\"  width=\"273\"  height=\"292\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 273px) 100vw, 273px\"  data-pk-src=\"https:\/\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png\"  data-pk-srcset=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?w=273&amp;ssl=1 273w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?resize=120%2C128&amp;ssl=1 120w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?resize=90%2C96&amp;ssl=1 90w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?resize=240%2C257&amp;ssl=1 240w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.0.png?resize=180%2C193&amp;ssl=1 180w\" ><\/p>\n<p>In src folder we have three different folders: app, assets , environments<\/p>\n<p>It also has other configuration files for src directory.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">favicon.ico<\/td>\n<td width=\"475\">Its favicon icon for your website or an application.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">index.html<\/td>\n<td width=\"475\">It contains html code with head, and body section. It is starting point of your application.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">main.ts<\/td>\n<td width=\"475\">It is starting point of typescript file in your angular application. It contains library which are imported by your angular project.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">polyfill.ts<\/td>\n<td width=\"475\">It is used for browser compatibility.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">style.css<\/td>\n<td width=\"475\">It has all the styles and css for your angular 4 project.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">test.ts<\/td>\n<td width=\"475\">This file is used to write unit tests.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">tsconfig.app.json<\/td>\n<td width=\"475\">It contains the configuration about how your application should compile.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">app\/*<\/td>\n<td width=\"475\"><img  loading=\"lazy\"  decoding=\"async\"  data-attachment-id=\"2630\"  data-permalink=\"https:\/\/code4developers.com\/angular-4-project-structure\/2-1\/\"  data-orig-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?fit=265%2C152&amp;ssl=1\"  data-orig-size=\"265,152\"  data-comments-opened=\"1\"  data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\"  data-image-title=\"2.1\"  data-image-description=\"\"  data-image-caption=\"\"  data-medium-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?fit=265%2C152&amp;ssl=1\"  data-large-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?fit=265%2C152&amp;ssl=1\"  class=\"alignnone size-full wp-image-2630 pk-lazyload\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQkAAACYAQMAAADN6451AAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABxJREFUWMPtwTEBAAAAwqD1T20ND6AAAAAAAL4NFMgAAfdNrQIAAAAASUVORK5CYII=\"  alt=\"\"  width=\"265\"  height=\"152\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 265px) 100vw, 265px\"  data-pk-src=\"https:\/\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png\"  data-pk-srcset=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?w=265&amp;ssl=1 265w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?resize=120%2C69&amp;ssl=1 120w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?resize=90%2C52&amp;ssl=1 90w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?resize=240%2C138&amp;ssl=1 240w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.1.png?resize=180%2C103&amp;ssl=1 180w\" ><\/p>\n<p>In app folder we have component and ts files.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">app \/app.module.ts<\/td>\n<td width=\"475\">It contains the entire library which are imported and used in your angular 4 application. It\u2019s a root module that tells Angular how to assemble the application. Currently it declares only the App_componenet.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">app\/app.component.<\/p>\n<p>{ts,html,css,spec.ts}<\/td>\n<td width=\"475\">It has AppComponent\u00a0with an HTML template, CSS style sheet, and a unit test. It\u2019s the\u00a0root\u00a0component of what will become a tree of nested components as the application evolves.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">assets\/*<\/td>\n<td width=\"475\"><img  loading=\"lazy\"  decoding=\"async\"  data-attachment-id=\"2631\"  data-permalink=\"https:\/\/code4developers.com\/angular-4-project-structure\/2-2\/\"  data-orig-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?fit=272%2C90&amp;ssl=1\"  data-orig-size=\"272,90\"  data-comments-opened=\"1\"  data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\"  data-image-title=\"2.2\"  data-image-description=\"\"  data-image-caption=\"\"  data-medium-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?fit=272%2C90&amp;ssl=1\"  data-large-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?fit=272%2C90&amp;ssl=1\"  class=\"alignnone size-full wp-image-2631 pk-lazyload\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARAAAABaAQMAAABKcJvoAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABpJREFUSMftwTEBAAAAwqD1T20Hb6AAAAAeAwxOAAFsAR57AAAAAElFTkSuQmCC\"  alt=\"\"  width=\"272\"  height=\"90\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 272px) 100vw, 272px\"  data-pk-src=\"https:\/\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png\"  data-pk-srcset=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?w=272&amp;ssl=1 272w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?resize=120%2C40&amp;ssl=1 120w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?resize=90%2C30&amp;ssl=1 90w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?resize=240%2C79&amp;ssl=1 240w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/2.2.png?resize=180%2C60&amp;ssl=1 180w\" ><\/p>\n<p>In this folder you can put images and anything else to be copied wholesale when you build your application.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">environments\/*<\/td>\n<td width=\"475\">In this folder one file for each of your destination environments, each exporting simple configuration variables to use in your application. The files are replaced on-the-fly when you build your app. You might use a different API endpoint for development than you do for production or maybe different analytics tokens. You might even use some mock services. Either way, the CLI has you covered.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">e2e\/<\/td>\n<td width=\"475\"><img  loading=\"lazy\"  decoding=\"async\"  data-attachment-id=\"2633\"  data-permalink=\"https:\/\/code4developers.com\/angular-4-project-structure\/3-2\/\"  data-orig-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?fit=274%2C92&amp;ssl=1\"  data-orig-size=\"274,92\"  data-comments-opened=\"1\"  data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\"  data-image-title=\"3\"  data-image-description=\"\"  data-image-caption=\"\"  data-medium-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?fit=274%2C92&amp;ssl=1\"  data-large-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?fit=274%2C92&amp;ssl=1\"  class=\"alignnone size-full wp-image-2633 pk-lazyload\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARIAAABcAQMAAACY3KjIAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABpJREFUSMftwQENAAAAwqD3T20PBxQAAMCnAQzwAAH9Og0pAAAAAElFTkSuQmCC\"  alt=\"\"  width=\"274\"  height=\"92\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 274px) 100vw, 274px\"  data-pk-src=\"https:\/\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png\"  data-pk-srcset=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?w=274&amp;ssl=1 274w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?resize=120%2C40&amp;ssl=1 120w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?resize=90%2C30&amp;ssl=1 90w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?resize=272%2C92&amp;ssl=1 272w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?resize=240%2C81&amp;ssl=1 240w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/3-1.png?resize=180%2C60&amp;ssl=1 180w\" ><\/p>\n<p>In this folder, all the test cases\u00a0from live the End-to-End cycles covered. They shouldn&#8217;t be inside\u00a0src\/\u00a0because e2e tests are really a separate app that just so happens to test your main app. That&#8217;s also why they have their own\u00a0tsconfig.e2e.json.<\/td>\n<\/tr>\n<tr>\n<td width=\"163\">node_modules\/<\/td>\n<td width=\"475\"><img  loading=\"lazy\"  decoding=\"async\"  data-attachment-id=\"2634\"  data-permalink=\"https:\/\/code4developers.com\/angular-4-project-structure\/4-2\/\"  data-orig-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?fit=277%2C352&amp;ssl=1\"  data-orig-size=\"277,352\"  data-comments-opened=\"1\"  data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\"  data-image-title=\"4\"  data-image-description=\"\"  data-image-caption=\"\"  data-medium-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?fit=236%2C300&amp;ssl=1\"  data-large-file=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?fit=277%2C352&amp;ssl=1\"  class=\"alignnone size-full wp-image-2634 pk-lazyload\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARUAAAFgAQMAAACvz3\/TAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAACNJREFUaN7twYEAAAAAw6D5U9\/gBFUBAAAAAAAAAAAAAADwDDGAAAHyS9ztAAAAAElFTkSuQmCC\"  alt=\"\"  width=\"277\"  height=\"352\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 277px) 100vw, 277px\"  data-pk-src=\"https:\/\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png\"  data-pk-srcset=\"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?w=277&amp;ssl=1 277w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?resize=236%2C300&amp;ssl=1 236w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?resize=120%2C152&amp;ssl=1 120w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?resize=90%2C114&amp;ssl=1 90w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?resize=240%2C305&amp;ssl=1 240w, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/4-1.png?resize=180%2C229&amp;ssl=1 180w\" ><\/p>\n<p>Node.js\u00a0creates this folder and puts all third party modules listed in package.json\u00a0.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>Summary<\/strong><\/p>\n<p>In this article, I discussed about Angular 4 Project structure which generated by Angular CLI. The\u00a0<a href=\"https:\/\/cli.angular.io\/\" target=\"_blank\" rel=\"noopener\">Angular CLI<\/a>\u00a0is a\u00a0<em>command line interface<\/em>\u00a0tool that can create a project, add files, and perform a variety of ongoing development tasks such as testing, bundling, and deployment. So it\u2019s very important to understand project structure of Angular 4 application before start development.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In previous article we learned about Angular 4 Installation. You can find that article on https:\/\/code4developers.com\/angular-4-installations\/\u00a0. This article describes the project structure of Angular 4 application which Angular CLI&hellip;<\/p>\n","protected":false},"author":5,"featured_media":2649,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[28],"tags":[29],"powerkit_post_featured":[],"class_list":{"0":"post-2625","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-angular","8":"tag-angular"},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/angular-2.png?fit=240%2C240&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8NAi4-Gl","jetpack-related-posts":[{"id":2586,"url":"https:\/\/code4developers.com\/angular-4-installations\/","url_meta":{"origin":2625,"position":0},"title":"Angular 4 Installations","author":"Nisarg Dave","date":"June 14, 2017","format":false,"excerpt":"Introduction This article demonstrates how to install Angular 4 in your local system and start working with angular\/cli using basic commands. What is Angular 4? Before starting with Angular 4, we need to know about Angular 2. Angular 2 is totally different kind of framework from Angular 1. Angular 1\u2026","rel":"","context":"In &quot;Angular&quot;","block_context":{"text":"Angular","link":"https:\/\/code4developers.com\/category\/angular\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1.png?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1.png?resize=700%2C400 2x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2017\/06\/1.png?resize=1050%2C600 3x"},"classes":[]},{"id":3746,"url":"https:\/\/code4developers.com\/angular-pipes\/","url_meta":{"origin":2625,"position":1},"title":"Pipes in Angular Part &#8211; 1 : lowercase, uppercase, and titlecase pipes","author":"Yatendrasinh Joddha","date":"June 30, 2018","format":false,"excerpt":"In this series of article for the angular rookies we will discuss about pipes in Angular, a way to write display-value transformations that you can declare in your HTML. In this article we will discuss about lowercase, uppercase, and titlecase pipes. At the end of the series we will create\u2026","rel":"","context":"In &quot;Angular&quot;","block_context":{"text":"Angular","link":"https:\/\/code4developers.com\/category\/angular\/"},"img":{"alt_text":"example output","src":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2018\/06\/example-output.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":3435,"url":"https:\/\/code4developers.com\/angular-5\/","url_meta":{"origin":2625,"position":2},"title":"Angular 5 &#8211; Video Tutorials","author":"Nisarg Dave","date":"April 14, 2018","format":false,"excerpt":"Angular version 5 - Googles's popular and open source JavaScript framework for building and developing single page mobile and desktop application. The latest version of Angular, Angular 5 was announced to users in 1st November 2017. Angular 5 is focused on making the Angular application smaller , faster and easier\u2026","rel":"","context":"In &quot;Angular 5&quot;","block_context":{"text":"Angular 5","link":"https:\/\/code4developers.com\/category\/angular5\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3934,"url":"https:\/\/code4developers.com\/angular-version-7-released\/","url_meta":{"origin":2625,"position":3},"title":"Angular Version 7 Released","author":"Yatendrasinh Joddha","date":"October 19, 2018","format":false,"excerpt":"Finally, the Angular version 7 (Angular v7) is out with some awesome features. Thanks to Angular team for all the efforts, in this major release angular team is spanning the entire platform, with the core framework, Angular Material, and the CLI with corresponding key versions. This release covers new landscapes\u2026","rel":"","context":"In &quot;Angular&quot;","block_context":{"text":"Angular","link":"https:\/\/code4developers.com\/category\/angular\/"},"img":{"alt_text":"Virtual Scrolling","src":"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1200\/1%2ACQKUmJrBs-523I4GOiEUaA.gif?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1200\/1%2ACQKUmJrBs-523I4GOiEUaA.gif?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1200\/1%2ACQKUmJrBs-523I4GOiEUaA.gif?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":14480,"url":"https:\/\/code4developers.com\/angular-custom-elements\/","url_meta":{"origin":2625,"position":4},"title":"Angular Custom Elements: Creating Reusable Components with Angular","author":"Yatendrasinh Joddha","date":"April 19, 2023","format":false,"excerpt":"Angular Custom Elements allow you to create reusable components that can be used in non-Angular applications. Custom Elements are a powerful feature that can help you share code across multiple projects and platforms. In this article, we'll take a closer look at Angular Custom Elements and show you how to\u2026","rel":"","context":"In &quot;Angular&quot;","block_context":{"text":"Angular","link":"https:\/\/code4developers.com\/category\/angular\/"},"img":{"alt_text":"Angular Custom Elements","src":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2023\/04\/Custom-elements.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2023\/04\/Custom-elements.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2023\/04\/Custom-elements.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2023\/04\/Custom-elements.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2023\/04\/Custom-elements.png?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":12847,"url":"https:\/\/code4developers.com\/connect-firebase-database-and-angular-app\/","url_meta":{"origin":2625,"position":5},"title":"Connect Firebase Realtime NoSQL Database with Angular App from Scratch","author":"Arif Khoja","date":"August 30, 2020","format":false,"excerpt":"In this tutorial, We are going to learn\u00a0How to connect Firebase Realtime NoSQL cloud database with Angular app from scratch?. We\u2019ll be using\u00a0AngularFire library for setting up Firebase database in the Angular web application. Firebase is a Google product, It is a real-time NoSQL cloud database that allows you to\u2026","rel":"","context":"In &quot;Angular&quot;","block_context":{"text":"Angular","link":"https:\/\/code4developers.com\/category\/angular\/"},"img":{"alt_text":"connect-angular-firebase","src":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2020\/08\/connect-angular-firebase.jpg?fit=715%2C350&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2020\/08\/connect-angular-firebase.jpg?fit=715%2C350&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2020\/08\/connect-angular-firebase.jpg?fit=715%2C350&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/code4developers.com\/wp-content\/uploads\/2020\/08\/connect-angular-firebase.jpg?fit=715%2C350&ssl=1&resize=700%2C400 2x"},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/posts\/2625","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/comments?post=2625"}],"version-history":[{"count":7,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/posts\/2625\/revisions"}],"predecessor-version":[{"id":3897,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/posts\/2625\/revisions\/3897"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/media\/2649"}],"wp:attachment":[{"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/media?parent=2625"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/categories?post=2625"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/tags?post=2625"},{"taxonomy":"powerkit_post_featured","embeddable":true,"href":"https:\/\/code4developers.com\/wp-json\/wp\/v2\/powerkit_post_featured?post=2625"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}