A Hacker News clone / Progressive Web App (PWA) developed with Angular 4 for the HNPWA project.
- Framework/UI libraries: Angular 4, Angular Router, Angular HTTP
- Module bundling: Webpack 3 with Scope Hoisting
- Service Worker: sw-precache
- Performance patterns: HTTP/2, Server Push, Brotli
- Server-side rendering: Yes with @angular/platform-server
- API: Hacker News Firebase API & Node-hnapi (unoffical)
- Hosting: Digitalocean / self-hosted
- Other details: Lazy loading of routes
- Author: Sebastian Müller
The application has 3 services that run in Docker containers on a CoreOS Container Linux in production.
My blog post has more details about the services and the architecture.
Best test result so far:
https://www.webpagetest.org/lighthouse.php?test=170711_54_532be7068a1836a1647889ad4ac5c1f2&run=3
- Install Yarn, Java SDK, Go 1.8, Caddy, and NodeJS 8
- run
yarn --pure-lockfile
- run
yarn run build
ornpm run build
- run
caddy
in the root directory - run
node dist/src/server.js
- run
go run api.go
- open http://localhost:8082
TODOS:
- CI configuration