A React & react-router-powered implementation of Hacker News using its Firebase API.
Live version: https://insin.github.io/react-hn
- 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
sessionStoragefor 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?
Install dependencies:
npm install
npm start- start development servernpm run build- build into thedist/directorynpm run lint- lintsrc/npm run lint:fix- lintsrc/and auto-fix issues where possible
docker build . -t react-hn-app- build the Docker image with the Dockerfile that is now ready to be deployed in a cloud service because of nginx integration and exposing port 80.docker run --name react-hn-app -p 3000:80 -d react-hn-app- This will run a Docker container and you can test it locally by visiting localhost:3000 in your browser.
