Skip to content

shayaulman/react-hn

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A React & react-router-powered implementation of Hacker News using its Firebase API.

react-hn screenshot

Live version: https://insin.github.io/react-hn

Features

  • Supports display of all item types: stories, jobs, polls and comments
  • Basic user profiles
  • Collapsible comment threads, with child counts
  • "Realtime" updates (free via Firebase!)
  • Last visit details for stories are cached in localStorage
  • New comments are highlighted:
    • Comments since your last visit to an item
    • New comments which load while you're reading an item
    • New comments in collapsed threads
  • Automatic or manual collapsing of comment threads which don't contain any new comments
  • Manual highlighting of the X most recent comments to catch up on threads you were reading elsewhere
  • Stories with new comments are marked on list pages
  • Stories can be marked as read to remove highighting from new comments
  • "comments" sections driven by the Changed Items API
  • Story listing pages are cached in sessionStorage for quick back button usage and pagination in the same session
  • Configurable settings:
    • auto collapse - automatically collapse comment threads without new comments on page load
    • show reply links - show "reply" links to Hacker News
    • show dead - show items flagged as dead
    • show deleted - show comments flagged as deleted in threads
  • Delayed comment detection - so tense! Who will it be? What will they say?

Feature requests are welcome!

Building

Install dependencies:

npm install

npm scripts

  • npm start - start development server
  • npm run build - build into the dist/ directory
  • npm run lint - lint src/
  • npm run lint:fix - lint src/ and auto-fix issues where possible

MIT Licensed

About

React-powered Hacker News client

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 89.3%
  • CSS 8.3%
  • HTML 2.4%