All Projects β†’ SebastianM β†’ angular-hacker-news

SebastianM / angular-hacker-news

Licence: other
A Hacker News PWA built with Angular

Programming Languages

go
31211 projects - #10 most used programming language
typescript
32286 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects
shell
77523 projects

Projects that are alternatives of or similar to angular-hacker-news

vanilla-wc-hnpwa
πŸ“± πŸš€ Hacker News PWA built with vanilla JS and Web Components
Stars: ✭ 38 (-25.49%)
Mutual labels:  hnpwa
hackerNews-pwa
hacker news pwa
Stars: ✭ 17 (-66.67%)
Mutual labels:  hnpwa
glimmer-hn-pwa
A Demonstration Of HackerNews Progressive Web App Powered By Glimmer.js
Stars: ✭ 28 (-45.1%)
Mutual labels:  hnpwa

Angular Hacker News PWA

A Hacker News clone / Progressive Web App (PWA) developed with Angular 4 for the HNPWA project.

SEE IT LIVE HERE!

Blog post with more details

Features

  • 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

Architecture

Architecture

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.

Current Lighthouse stats

Best test result so far:
https://www.webpagetest.org/lighthouse.php?test=170711_54_532be7068a1836a1647889ad4ac5c1f2&run=3

Development

  1. Install Yarn, Java SDK, Go 1.8, Caddy, and NodeJS 8
  2. run yarn --pure-lockfile
  3. run yarn run build or npm run build
  4. run caddy in the root directory
  5. run node dist/src/server.js
  6. run go run api.go
  7. open http://localhost:8082

TODOS:

  • CI configuration
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].