https://github.com/data-miner00/ng-hackernews
Hackernews implementation in Angular
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.7%) to scientific vocabulary
Keywords
Repository
Hackernews implementation in Angular
Basic Info
- Host: GitHub
- Owner: data-miner00
- License: mit
- Language: TypeScript
- Default Branch: master
- Homepage: https://hn.mumk.dev
- Size: 4.22 MB
Statistics
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 8
- Releases: 0
Topics
Metadata Files
README.md
The Hacker Times
An Angular implementation of Hackernews with NY Times vibes.
View Website »
Explore the docs
·
Report Bug
·
Request Feature
Table of Contents
I believe beautiful web apps can be made with Angular too 💕
About The Project

A simple implementation of the Hackernews interface in Angular using the official Hackernews API. Save your favourite posts or interesting topics to the read later lists that are stored entirely on your browser.

The listing page for Top Stories, Ask Stories, Show Stories and Job Stories.

The page for an individual story with details and discussions.
Built With
The technologies and tools used in the project.
- Angular
- Sass
- TypeScript
- Jasmine/Karma
Design
There are not much design considerations when it comes to this project and hence very straightforward and simple. The portal itself consumes the data from Hackernews API and persistence via localStorage.
mermaid
graph LR
hn[Hackernews API] -- Stories --> Portal
localStorage -- Persistence --> Portal
Getting Started
Prerequisites
The list of tools that are used for development.
- npm
sh npm install npm@latest -g - Git
- firebase-tools
sh npm install -g firebase-tools
Installation
Installation is fairly straightforward. Just clone the repo and npm i && npm start.
- Clone the repo
sh git clone https://github.com/data-miner00/ng-hackernews.git - Install Node dependencies
sh npm i - Recommend to run tests to check if things are breaking
sh npm test - Lint the Sass files
sh npm run lint:css - Start local dev server
sh npm start - Compile for production
sh npm run build - Deployment
sh firebase deploy
Roadmap
- [ ] Add Pexels API for image
- [ ] Use mixin for repeated css
- [ ] Implement User Page
- [ ] Add upvote count to comment
- [ ] Implement random page
- [ ] Add linter
- [ ] Improve mobile responsiveness
- [ ] Use RxJs ShareReplay to cache results
See the open issues for a full list of proposed features (and known issues).
Contributing
I am bad at design, please help if you can design it better!
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
License
Distributed under the MIT License. See LICENSE for more information.
Acknowledgments
List of resources that are helpful and would like to give credit to.
Owner
- Name: Shaun Chong
- Login: data-miner00
- Kind: user
- Location: undefined, Mars
- Company: Experian
- Website: https://mumk.dev/
- Twitter: Has66771004
- Repositories: 76
- Profile: https://github.com/data-miner00
Full Queue Developer
GitHub Events
Total
- Issues event: 4
- Delete event: 1
- Push event: 2
- Pull request event: 5
- Create event: 4
Last Year
- Issues event: 4
- Delete event: 1
- Push event: 2
- Pull request event: 5
- Create event: 4
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 11
- Total pull requests: 11
- Average time to close issues: about 1 month
- Average time to close pull requests: about 22 hours
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.09
- Merged pull requests: 10
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 3
- Average time to close issues: N/A
- Average time to close pull requests: 6 minutes
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.33
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- data-miner00 (12)
Pull Request Authors
- data-miner00 (16)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- @angular-devkit/build-angular ~12.2.12 development
- @angular/cli ~12.2.12 development
- @angular/compiler-cli ~12.2.0 development
- @types/jasmine ~3.8.0 development
- @types/node ^12.11.1 development
- dotenv ^16.0.0 development
- jasmine-core ~3.8.0 development
- karma ^6.3.16 development
- karma-chrome-launcher ~3.1.0 development
- karma-coverage ~2.0.3 development
- karma-jasmine ~4.0.0 development
- karma-jasmine-html-reporter ~1.7.0 development
- typescript ~4.3.5 development
- yargs ^17.3.1 development
- @angular/animations ~12.2.0
- @angular/common ~12.2.0
- @angular/compiler ~12.2.0
- @angular/core ~12.2.0
- @angular/fire ^7.2.1
- @angular/forms ~12.2.0
- @angular/platform-browser ~12.2.0
- @angular/platform-browser-dynamic ~12.2.0
- @angular/router ~12.2.0
- firebase ^9.4.0
- rxfire ^6.0.0
- rxjs ~6.6.0
- tslib ^2.3.0
- zone.js ~0.11.4
- 1038 dependencies