A news aggregator and RSS reader app built with Vue and Firebase.
Report Bug
·
Request Feature
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.
This project is entirely built with the following components and languages:
Follow these instructions in order to get a copy of the project up and running on your local machine for development and testing purposes.
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
.
- Clone the repo
git clone https://github.com/vijethph/FeedHub.git
- Open the downloaded folder
cd FeedHub
- 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 inNews.vue
file insidesrc/components
folder. Then import the required dependencies in project folder using
npm install
-
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 athttp://localhost:5000
. Put the url inindex.vue
file insidesrc/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 inindex.vue
file insidesrc/components/feed-reader
folder.
- Local Server Method: Go to
-
Run the program using
npm run serve
The app should be running in http://localhost:8080
in your browser.
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.
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.
- 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
Distributed under the MIT License.
Vijeth P H - @vijethph
Sathya M - @sathya5278
Project Link: https://github.com/vijethph/FeedHub
If you like this project, please ⭐ this repo and share it with others 👍