Create hacker news using Angular and that has been completed from my end with below functionalities.
- Desktop design is provided below. Make it responsive for tablet and mobile. Apply your thoughts on what’d be the best user experience for the respective devices
- Upvote (maintain upvotes using in-browser storage APIs – no service integration, but keep the functionality such that it can be replaced with an service with minimal code change). You can add as many upvotes as you wish.
- Hide functionality to remove the news from user’s view.
- Prev | Next link should get the relevant data and all paginated URL's should be bookmarkable.
- Plot the timeline with the News ID as the x axis and votes on the Y axis. This will match the data in the details table above it.
- The timeline chart should update real time as and when the upvote is clicked.
- ALL MODIFIED DATA like hide and Upvotes – should be persisted and should not reset on browser refresh.
- Use Angular universal for server side rendering.
- Add PWA functionality.
- Show skeleton on data loading.
- Show loader on API call.
- Automatic build pipeline is set on heroku.
- On clicking of user, It will redirect to user detail page.
- On clicking of title, will redirect to item page.
Navigate to https://sap-assignment.herokuapp.com
or click here.
- clone
https://github.com/alovelesh/sap-assignment.git
into your local repository. - go to your project directory
cd sap-assignment
. - Install all dependencies
npm install
- Run
npm run build:ssr && npm run serve:ssr
command. - open
http://localhost:4000/
.
Run ng test
to execute the unit tests via Karma.