Doist Front-End Developer Test Project - a news reader leveraging the Hacker News API to show users the latest news stories.
This is a fully responsive mobile-first React web app with offline capabilities!
- Run
npm install
- Run
npm start
- Run
npm test
To test the app's offline mode, it must run on a production build. To kick off a production build and run in production mode:
- Run
npm run build
- Run
serve -s build
The app will run on localhost:5000.
On first load, please duplicate the tab and close the existing one before setting the network to offline as the "default behaviour is to conservatively keep the updated service worker in the "waiting" state. This means that users will end up seeing older content until they close their existing, open tabs" - CRA docs
After setting to offline on the new tab and reloading the page, stories will be served from the cache.
- create-react-app (using its progressive web app template)
- styled-components: CSS-in-JS
- react-infinite-scroll-component: inifite scrolling
- moment: for date and time manipulation
- enzyme & enzyme-adapter-react-16: for testing with Jest
- Husky: pre-commit hooks
- Prettier: code formatting
Some extensions will have an impact on Lighthouse ratings. For accurate readings, try generating reports in incognito mode.