Skip to content

Commit 9b24eab

Browse files
committed
feat:angular multi-app structure project
1 parent c19e6eb commit 9b24eab

File tree

387 files changed

+13986
-47675
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

387 files changed

+13986
-47675
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ lerna-debug.log
77
**/.DS_Store
88
.nyc_output
99
dist
10+
/.angular/cache

README.md

Lines changed: 67 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,74 @@
1-
# Sourceloop Angular Boiler Plate
1+
# Sourceloop Angular Multi Project Application
22

3-
### Feedback
3+
<!-- DOCUMENTATION -->
44

5-
If you've noticed a bug or have a question or have a feature request, [search the issue tracker]([Issues · sourcefuse/angular-boilerplate · GitHub](https://github.com/sourcefuse/angular-boilerplate/issues)) to see if someone else in the community has already created a ticket. If not, go ahead and [make one](https://github.com/sourcefuse/angular-boilerplate/issues/new/choose)! All feature requests are welcome. Implementation time may vary. Feel free to contribute the same, if you can. If you think this extension is useful, please [star](https://help.github.com/en/articles/about-stars) it. Appreciation really helps in keeping this project alive.
5+
# Description
66

7-
### Code of Conduct
7+
- We are using multiple projects in one Angular environment so that we can help users to improve
8+
code reusability, scalability, maintainability, and customization. It can also help in increase productivity, reduce risks, and improve the quality of application.
89

9-
Code of conduct guidelines [here.](CODE_OF_CONDUCT.md)
10+
- Code Reusability: I have multiple applications or parts of applications that share common functionality,
11+
using multiple projects can help you avoid duplicating code. You can create a shared library project and use it across all the projects. This approach can help you maintain consistency and reduce code duplication.
1012

11-
### License
13+
- Isolation: Each project can be developed and tested independently, which allows you to isolate changes and
14+
minimize the risk of breaking other parts of the application. This approach can help you increase productivity and reduce the time spent on debugging and fixing issues.
1215

13-
[MIT](LICENSE)
16+
- Scalability: As your application grows, it can become more complex and harder to maintain. Using multiple
17+
projects can help you manage complexity by breaking down the application into smaller, more manageable pieces. You can also use different teams to work on different projects, which can help you scale the development process.
1418

15-
<!-- docs-index-end -->
19+
- Customization: Each project can have its own configuration and dependencies, which allows to
20+
customize the build process and optimize each project for its specific use case. This approach can help to improve the performance and reduce the size of the application.
21+
22+
# Projects
23+
24+
1. Angular-BoilerPlate:
25+
- This boilerplate project is a project set up that can be easily altered to create new projects. The user
26+
is able to use in the original project, its foundation, and its structure to set up a new one without changing the original.
27+
28+
- This project is based on Angular CLI on version 14.0.0.
29+
30+
FOR further reference you can refer [here]()
31+
32+
2. Shared Library
33+
- A shared library can include components, services, pipes, directives, and other modules that can be used
34+
by other projects in the workspace. By using a shared library, you can avoid duplicating code and functionality across multiple projects, which can save time and effort.
35+
36+
For further reference you can refer [here]()
37+
38+
# Prerequisite
39+
40+
Run `npm install -g @angular/cli` for Angular CLI & NPM installed
41+
Run `npm i @angular/material` for Angular material
42+
43+
# Code scaffolding
44+
45+
Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.
46+
47+
48+
# MainProject
49+
50+
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.2.6.
51+
52+
## Development server
53+
54+
Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files.
55+
56+
## Code scaffolding
57+
58+
Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
59+
60+
## Build
61+
62+
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.
63+
64+
## Running unit tests
65+
66+
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
67+
68+
## Running end-to-end tests
69+
70+
Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
71+
72+
## Further help
73+
74+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.

angular.json

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
{
2+
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
3+
"version": 1,
4+
"newProjectRoot": "projects",
5+
"projects": {
6+
"angular-boilerplate": {
7+
"projectType": "application",
8+
"schematics": {
9+
"@schematics/angular:component": {
10+
"style": "scss"
11+
}
12+
},
13+
"root": "projects/angular-boilerplate",
14+
"sourceRoot": "projects/angular-boilerplate/src",
15+
"prefix": "arc",
16+
"architect": {
17+
"build": {
18+
"builder": "@angular-devkit/build-angular:browser",
19+
"options": {
20+
"outputPath": "dist/angular-boilerplate",
21+
"index": "projects/angular-boilerplate/src/index.html",
22+
"main": "projects/angular-boilerplate/src/main.ts",
23+
"polyfills": ["zone.js"],
24+
"tsConfig": "projects/angular-boilerplate/tsconfig.app.json",
25+
"inlineStyleLanguage": "scss",
26+
"assets": [
27+
"projects/angular-boilerplate/src/favicon.ico",
28+
{
29+
"glob": "**/*",
30+
"input": "projects/shared-library/src/lib/assets/",
31+
"output": "/assets/"
32+
}
33+
],
34+
"styles": [
35+
"./node_modules/@angular/material/prebuilt-themes/indigo-pink.css",
36+
"node_modules/eva-icons/style/scss/eva-icons.scss",
37+
"node_modules/@nebular/theme/styles/prebuilt/dark.css",
38+
"projects/angular-boilerplate/src/styles.scss"
39+
],
40+
"scripts": []
41+
},
42+
"configurations": {
43+
"production": {
44+
"budgets": [
45+
{
46+
"type": "initial",
47+
"maximumWarning": "1mb",
48+
"maximumError": "2mb"
49+
},
50+
{
51+
"type": "anyComponentStyle",
52+
"maximumWarning": "2kb",
53+
"maximumError": "4kb"
54+
}
55+
],
56+
"outputHashing": "all"
57+
},
58+
"development": {
59+
"fileReplacements": [
60+
{
61+
"replace": "projects/angular-boilerplate/src/environments/environment.ts",
62+
"with": "projects/angular-boilerplate/src/environments/environment.ts"
63+
}
64+
],
65+
"index": {
66+
"input": "projects/angular-boilerplate/src/index.html",
67+
"output": "index.html"
68+
},
69+
"optimization": false,
70+
"outputHashing": "all",
71+
"sourceMap": false,
72+
"namedChunks": false,
73+
"extractLicenses": true,
74+
"vendorChunk": false,
75+
"buildOptimizer": false,
76+
"budgets": [
77+
{
78+
"type": "initial",
79+
"maximumWarning": "7mb",
80+
"maximumError": "7mb"
81+
},
82+
{
83+
"type": "anyComponentStyle",
84+
"maximumWarning": "6kb",
85+
"maximumError": "10kb"
86+
}
87+
]
88+
}
89+
},
90+
"defaultConfiguration": "development"
91+
},
92+
"serve": {
93+
"builder": "@angular-devkit/build-angular:dev-server",
94+
"options": {
95+
"browserTarget": "angular-boilerplate:build"
96+
},
97+
"configurations": {
98+
"production": {
99+
"browserTarget": "angular-boilerplate:build:production"
100+
},
101+
"development": {
102+
"browserTarget": "angular-boilerplate:build:development"
103+
}
104+
},
105+
"defaultConfiguration": "development"
106+
},
107+
"extract-i18n": {
108+
"builder": "@angular-devkit/build-angular:extract-i18n",
109+
"options": {
110+
"browserTarget": "angular-boilerplate:build"
111+
}
112+
},
113+
"test": {
114+
"builder": "@angular-devkit/build-angular:karma",
115+
"options": {
116+
"polyfills": ["zone.js", "zone.js/testing"],
117+
"tsConfig": "projects/angular-boilerplate/tsconfig.spec.json",
118+
"inlineStyleLanguage": "scss",
119+
"assets": [
120+
"projects/angular-boilerplate/src/favicon.ico",
121+
{
122+
"glob": "**/*",
123+
"input": "projects/shared-library/src/lib/assets/",
124+
"output": "projects/shared-library/src/lib/assets/"
125+
}
126+
],
127+
"styles": [
128+
"projects/angular-boilerplate/src/styles.scss",
129+
"projects/shared-library/src/lib/theme/styles/index.scss"
130+
],
131+
"scripts": []
132+
}
133+
}
134+
}
135+
},
136+
"shared-library": {
137+
"projectType": "library",
138+
"root": "projects/shared-library",
139+
"sourceRoot": "projects/shared-library/src",
140+
"prefix": "lib",
141+
"architect": {
142+
"build": {
143+
"builder": "@angular-devkit/build-angular:ng-packagr",
144+
"options": {
145+
"project": "projects/shared-library/ng-package.json"
146+
},
147+
"configurations": {
148+
"production": {
149+
"tsConfig": "projects/shared-library/tsconfig.lib.prod.json"
150+
},
151+
"development": {
152+
"tsConfig": "projects/shared-library/tsconfig.lib.json"
153+
}
154+
},
155+
"defaultConfiguration": "production"
156+
},
157+
"test": {
158+
"builder": "@angular-devkit/build-angular:karma",
159+
"options": {
160+
"tsConfig": "projects/shared-library/tsconfig.spec.json",
161+
"polyfills": ["zone.js", "zone.js/testing"]
162+
}
163+
}
164+
}
165+
}
166+
},
167+
"defaultProject": "angular-boilerplate",
168+
"cli": {
169+
"analytics": "dcf534a6-f2c3-4c9c-99f0-3de66c9162da"
170+
}
171+
}

apps/boiler-plate/.dockerignore

Lines changed: 0 additions & 7 deletions
This file was deleted.

apps/boiler-plate/.env.example

Lines changed: 0 additions & 7 deletions
This file was deleted.

apps/boiler-plate/.eslintrc.json

Lines changed: 0 additions & 50 deletions
This file was deleted.

apps/boiler-plate/.gitignore

Lines changed: 0 additions & 57 deletions
This file was deleted.

apps/boiler-plate/.prettierignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)