Giter Site home page Giter Site logo

michaelbull / aurelia-hacker-news Goto Github PK

View Code? Open in Web Editor NEW
62.0 6.0 7.0 2.55 MB

A recreation of the Hacker News website written in TypeScript and built with Aurelia.

Home Page: https://michaelbull.github.io/aurelia-hacker-news

License: ISC License

HTML 18.57% TypeScript 48.09% CSS 26.34% JavaScript 6.99%
hacker-news webpack typescript firebase aurelia hackernews hackernews-clone

aurelia-hacker-news's People

Contributors

fedoranimus avatar michaelbull avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

aurelia-hacker-news's Issues

Progressive Web App

Specification

Each implementation must include:

  • Views: Hacker News Top Stories, New, Show, Ask, Jobs & threaded Comments
    • Each of these should use routing to enable sharability. For reference, see the PreactHN implementation.
  • App must display 30 items per-page for story list views
  • App must be a Progressive Web App (checklist)
  • App must score over a 90/100 using Lighthouse
  • App must aim to be interactive in under 5 seconds on a Moto G4 over 3G. Use WebPageTest using the auto-selected Moto G4 + Faster 3G setting to validate "Time to interactive"
    • We look at numeric Lighthouse scores for TTI as well as a manual inspection of the application's Timeline "trace" and Filmstrip as a sanity check.
  • App must use the Application Shell pattern to instantly load the skeleton of the UI on repeat visits
  • App is responsive on desktop and mobile, making best use of available screen real-estate. See Vue HN as an example.
  • App must do its best to work cross-browser

Optionally:

  • App supports offline caching of HN data (e.g similar to the 'Offline Mode' in ReactHN)
  • App may use server-side rendering so displaying content is resilient to JS not loading on the network

User interface:

  • At this time, HNPWA dhttps://github.com/tastejs/hacker-news-pwasoes not prescribe a specific stylesheet or theme for implementations. We will be aiming to provide this in the near future similar to how we do with TodoMVC.

Data sources

If using the Firebase powered API please use 30 stories per-page to ensure consistency between implementations using the Unofficial API as well as the actual Hacker News website

Network settings

  • Emerging Markets: Chrome Beta on a Motorola G (gen 4) tested from Dulles, Virginia on a 400 Kbps 3G connection with 400ms of latency. Tested with WebPageTest using the auto-selected Moto G4 + Emerging Markets setting.
  • Faster 3G: Chrome Beta on a Motorola G (gen 4) tested from Dulles, Virginia on a 1.6 Mbps 3G connection with 300ms of latency. Tested with WebPageTest using the auto-selected Moto G4 + Faster 3G setting.
  • Time to Interactive readings taken from linked Lighthouse results in WebPageTest.

Add settings page

Could allow the user to change the STORIES_PER_PAGE, enable auto-refresh, etc

Pluralise can be improved

I was glancing your html templates, it made me smile when I saw an exactly same value converter pluralise as I had in my project.

I thought you might be using the same underneath library I use but you didn’t.

This 👇 lib can help you to do proper English plural, if you don’t mind inflating your js.
https://github.com/blakeembrey/pluralize

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.