vijethph / FeedHub

A Vue.js App that fetches news and RSS feeds

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Status GitHub issues Contributors GitHub forks GitHub stars GitHub license made-with-vue forthebadge forthebadge


Logo

FeedHub

A news aggregator and RSS reader app built with Vue and Firebase.

Report Bug · Request Feature

Table of Contents

About The Project

FeedHub Login Page FeedHub News Page FeedHub News Sources Page FeedHub RSS Page

This is a news aggregator and RSS reader app that uses Firebase Auth, Firestore DB, Vue.js Framework and Azure Functions to fetch news sources and rss feeds, aggregate contents and display them in a user-friendly format. User can authenticate and login with email, Google or Microsoft, view latest news, add and remove favourite news sources, add RSS feeds and subscribe to updates. It also makes use of NewsAPI to fetch news from different sources around the world. It fetches and parses RSS feeds with Azure Functions, and is deployed via Firebase Hosting.

Built With

This project is entirely built with the following components and languages:

Getting Started

Follow these instructions in order to get a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Node.js>=10 should be installed. After installation, check Node.js version using

node --version

You should have a Firebase Account. Log in to Firebase Console and create a new project. Add Firebase Credentials to the app in main.js file. In Firebase Console, enable authentication with email/password, Google and Microsoft. Create Firestore Database with name as userfavs.

Installation

  1. Clone the repo
git clone https://github.com/vijethph/FeedHub.git
  1. Open the downloaded folder
cd FeedHub
  1. Modify the firebaseConfig variable in main.js file as per your Firebase project configuration. Sign up for NewsAPI, retrieve an API key, and place it in News.vue file inside src/components folder. Then import the required dependencies in project folder using
npm install
  1. Choose any one of the following methods for creating RSS parsing server:

    • Local Server Method: Go to expressrssserver folder, and run the following commands. The server should be running at http://localhost:5000. Put the url in index.vue file inside src/components/feed-reader folder.
    npm install
    node server.js
    
    • Azure Function Method: Open up Azure Portal, create an Azure Function with HTTP Trigger, and replace the code in Azure Function with the one present in the file azurefunction.js. Get the Function URL and put it in index.vue file inside src/components/feed-reader folder.
  2. Run the program using

npm run serve

The app should be running in http://localhost:8080 in your browser.

Usage

Once the app starts, you can create an account in Register page, and then login with email/password or Google to find the various features of this project. You can view the latest news, add or remove favourite news sources. You can also add RSS feeds and subscribe to updates.

Contributing contributions welcome

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License.

Contact

Vijeth P H - @vijethph

Sathya M - @sathya5278

Project Link: https://github.com/vijethph/FeedHub

Thank You!

forthebadge

If you like this project, please ⭐ this repo and share it with others 👍

Acknowledgements

About

A Vue.js App that fetches news and RSS feeds

License:MIT License


Languages

Language:Vue 84.8%Language:JavaScript 9.3%Language:CSS 3.5%Language:HTML 2.5%