Headlines is a newsfeed app that displays published articles and sources from well-known and reliable sources. It fetches this data by consuming an api called NewsApi that returns JSON metadata for published articles on a range of news sources and blogs. This application is similar to a mordern RSS feed.
- Getting Started
- Prerequisites
- Running Tests
- Deployment.
- Technologies
- Clone the repo to your local machine
npm install
to install the dependencies associated with this projectnpm start
to start the project on your local machine- Navigate to (http://localhost:8000)
- You need to have node installed on your local machine
- You require your api key from the NEWS API website, for project use
npm test
runs the tests on your local machine, the test coverage is available on the repo
This application is deployed on heroku with this link (https://headlines-doni.herokuapp.com/)
Headlines is built with Reactjs and Flux architecture. Nodejs and Express are used for server side development. The application and bundled with Webpack.
- React is front end library developed by Facebook. It's used for handling view layer for web and mobile apps. ReactJS allows us to create reusable UI components. It is currently one of the most popular JavaScript libraries and it has strong foundation and large community behind it.
- Flux is the application architecture that Facebook uses for building client-side web applications. It complements React's composable view components by utilizing a unidirectional data flow. It's more of a pattern rather than a formal framework.
- Webpack is a tool to build JavaScript modules in your application
- The user needs to redirect to the main news source website to view the article.
- Limited test coverage
- Users need to have a google account to login in
- Where can i get an API Key to run the application on my local Ans: Request an API key from (https://newsapi.org/)
To contribute to this project:
- Fork the project & clone locally
- Create an upstream remote and sync your local copy before you branch
- Branch for each separate piece of work.
- Do the work, write good commit messages, and read the CONTRIBUTING file if there is one.
- Push to your origin repository
- Create a new PR in GitHub.
- Respond to any code review feedback