Skip to content

Commit 0ac6518

Browse files
committed
angular universal with firebase hosting and cloud functions
1 parent 4124e71 commit 0ac6518

File tree

81 files changed

+4995
-684
lines changed

Some content is hidden

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

81 files changed

+4995
-684
lines changed

.firebaserc

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"projects": {
3+
"default": "happy-todolist"
4+
}
5+
}

angular.json

+55-4
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"build": {
1818
"builder": "@angular-devkit/build-angular:browser",
1919
"options": {
20-
"outputPath": "dist/angular-serverside",
20+
"outputPath": "dist/browser",
2121
"index": "src/index.html",
2222
"main": "src/main.ts",
2323
"polyfills": "src/polyfills.ts",
@@ -121,8 +121,59 @@
121121
"devServerTarget": "angular-serverside:serve:production"
122122
}
123123
}
124+
},
125+
"server": {
126+
"builder": "@angular-devkit/build-angular:server",
127+
"options": {
128+
"outputPath": "dist/server",
129+
"main": "server.ts",
130+
"tsConfig": "tsconfig.server.json"
131+
},
132+
"configurations": {
133+
"production": {
134+
"outputHashing": "media",
135+
"fileReplacements": [
136+
{
137+
"replace": "src/environments/environment.ts",
138+
"with": "src/environments/environment.prod.ts"
139+
}
140+
],
141+
"sourceMap": false,
142+
"optimization": true
143+
}
144+
}
145+
},
146+
"serve-ssr": {
147+
"builder": "@nguniversal/builders:ssr-dev-server",
148+
"options": {
149+
"browserTarget": "angular-serverside:build",
150+
"serverTarget": "angular-serverside:server"
151+
},
152+
"configurations": {
153+
"production": {
154+
"browserTarget": "angular-serverside:build:production",
155+
"serverTarget": "angular-serverside:server:production"
156+
}
157+
}
158+
},
159+
"prerender": {
160+
"builder": "@nguniversal/builders:prerender",
161+
"options": {
162+
"browserTarget": "angular-serverside:build:production",
163+
"serverTarget": "angular-serverside:server:production",
164+
"routes": [
165+
"/"
166+
]
167+
},
168+
"configurations": {
169+
"production": {}
170+
}
124171
}
125172
}
126-
}},
127-
"defaultProject": "angular-serverside"
128-
}
173+
}
174+
},
175+
"defaultProject": "angular-serverside",
176+
"cli": {
177+
"analytics": "4481ef3a-12dd-4d9f-b5ff-5dad09fd86b1"
178+
}
179+
}

firebase.json

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"hosting": {
3+
"public": "dist/browser",
4+
"ignore": [
5+
"firebase.json",
6+
"**/.*",
7+
"**/node_modules/**"
8+
],
9+
"rewrites": [
10+
{
11+
"source": "**",
12+
"function": "ssr"
13+
}
14+
]
15+
}
16+
}

functions/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
node_modules/

functions/cp-angular.js

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
const fs = require('fs-extra');
2+
3+
(async() => {
4+
5+
const src = '../dist';
6+
const copy = './dist';
7+
8+
await fs.remove(copy);
9+
await fs.copy(src, copy);
10+
11+
})();

0 commit comments

Comments
 (0)