An open API service indexing awesome lists of open source software.

https://github.com/rjohnpaul/echonews

News Search Engine using more than 50+ RSS Feeds and MiniLM-L12-v2
https://github.com/rjohnpaul/echonews

jupyter-notebook nextjs rss-aggregator rss-feed shadcn-ui tailwindcss tensorflow

Last synced: 2 months ago
JSON representation

News Search Engine using more than 50+ RSS Feeds and MiniLM-L12-v2

Awesome Lists containing this project

README

        

# EchoNews: AI-Powered News Aggregation Platform


EchoNews Logo

## Overview

EchoNews is a sophisticated AI-powered news aggregation and summarization platform that transforms how users consume digital content. Leveraging cutting-edge artificial intelligence, EchoNews automatically collects articles from diverse RSS feeds, processes them through advanced machine learning models, and delivers personalized, concise summaries tailored to individual preferences. Built on a robust architecture integrating Next.js for the frontend and FastAPI for the backend, EchoNews creates an intuitive and seamless news experience.

## Key Features

- **Intelligent News Personalization**: Advanced algorithm that curates content from multiple RSS sources based on user preferences and reading patterns
- **State-of-the-Art AI Summarization**: Utilizes LLaMA and other sophisticated AI models to generate comprehensive yet concise article summaries while preserving key information
- **Dynamic Category Navigation**: Intuitive filtering system allowing users to explore news across multiple dimensions and interests
- **Responsive Cross-Platform Design**: Meticulously crafted interface optimized for seamless experiences across desktop, tablet, and mobile devices
- **High-Performance Backend**: Scalable FastAPI architecture ensuring rapid response times and efficient data processing

## Technical Architecture

### Frontend
- **Framework**: Next.js with React for component-based UI development
- **Styling**: TailwindCSS for responsive design and consistent visual identity
- **State Management**: React Context API and custom hooks for efficient state handling

### Backend
- **API Framework**: FastAPI for high-performance, asynchronous request handling
- **Language**: Python 3.8+ with type annotations
- **Data Processing**: Custom NLP pipelines for content analysis

### Infrastructure
- **To Do ->** `Database: PostgreSQL hosted on Supabase for reliable data persistence`
- **AI Integration**: LLaMA model optimized for text summarization tasks
- **Deployment**: Vercel for frontend services, Render for backend processes and fastapi initialization

## Installation Guide

### Prerequisites
Before beginning installation, ensure your development environment includes:
- Node.js (version 16.x or higher)
- Python (version 3.8 or higher)
- Git for version control

### Setup Instructions

1. **Clone the Repository**
```bash
git clone https://github.com/RJohnPaul/newsAI.git
cd newsAI
```

2. **Configure Frontend Environment**
```bash
npm install
```

3. **Prepare Backend Services**
```bash
pip install -r requirements.txt
```

4. **Launch Development Environment**
```bash
npm run api-all
```
This command initializes both the Next.js frontend server and FastAPI backend services simultaneously.

## Localhost Running

- replace the const ```bash BASE_URL = "http://127.0.0.1:8000" ``` at **api/news/route.ts**

## API Documentation

The EchoNews backend exposes several RESTful endpoints for integration:

- **Article Retrieval**: `/api/news/sources/{language}`
- Gets list of available news sources for a specific language

- **Main Article Fetching**: `/api/news`
- Returns article without language
- Includes article counts and relationship metadata

- **Api Running Checker**: `/api/Helloapi`
- Returns a sample message : "Hello from FastAPI powered by Gemini 1.5 Flash"
- This makes sure the api is running in backend

## Research Papers based on concept
- [IEEE-Explore-paper-1](https://ieeexplore.ieee.org/document/5072521)
- [IEEE-Explore-paper-2](https://ieeexplore.ieee.org/document/5578100)
## Contributing to EchoNews

We welcome contributions from developers of all skill levels. To contribute:

1. Fork the official repository
2. Create a feature branch with descriptive naming (`git checkout -b feature/enhanced-summarization`)
3. Implement your changes with appropriate tests
4. Commit with clear, descriptive messages (`git commit -m "Implemented enhanced summarization algorithm"`)
5. Push to your fork and submit a detailed pull request

## Why Not Try on Collab?

- There is [OGNEWS.ipynb](https://github.com/RJohnPaul/EchoNews/blob/d3ead31ae22ca79935031fb64a404b6e4aca90b4/OGNEWS.ipynb) file where the code can be executed in google collab for results

---

This project builds upon the architectural foundation of the [Next.js FastAPI boilerplate](https://github.com/digitros/nextjs-fastapi), extending it with custom AI capabilities and news-specific features.