Skip to content

MSudharsh110305/study-tool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Typing SVG
Python Flask Gemini Railway

Banking News Aggregator for Exam Preparation

Automated news processing with AI-generated glossaries and practice questions


🌟 Project Overview

This application automatically aggregates banking and financial news from multiple sources, processes them using Google Gemini AI, and generates comprehensive study materials for exam preparation. The system delivers daily reports with simplified explanations and practice questions directly to users' email.

🤖 AI Features

  • Intelligent Content Processing using Google Gemini
  • Auto-Generated Glossaries for banking terminology
  • Practice MCQ Generation from current events
  • Smart News Categorization by relevance

Automation

  • Daily Scheduled Reports at 8:00 PM IST
  • Multi-Source News Aggregation from RSS and APIs
  • Professional PDF Generation with proper formatting
  • Automated Email Delivery with attachments

🚀 Key Features

  • 📰 News Aggregation - Fetches content from financial news sources using targeted keywords
  • 🧠 AI Processing - Generates beginner-friendly explanations for complex banking terms
  • ❓ MCQ Generation - Creates practice questions based on current banking developments
  • ⏰ Automated Scheduling - Daily report generation and email delivery
  • 💻 Web Dashboard - Manual control and status monitoring interface

🛠️ Setup Instructions

Requirements

Python 3.9+, Google Gemini API Key, Gmail Account with App Password

Installation

git clone https://github.com/MSudharsh110305/study-tool.git
cd study-tool
pip install -r requirements.txt

Configuration

Create .env file:

GEMINI_API_KEY=your_gemini_api_key
[email protected]
EMAIL_PASSWORD=your_gmail_app_password
[email protected]
NEWS_API_KEY=your_newsapi_key

Run Application

python app.py

Access at http://localhost:5000


🌐 Deployment

Railway Platform

  1. Push to GitHub: git add . && git commit -m "Deploy" && git push origin main
  2. Deploy on Railway: Visit railway.app → Deploy from GitHub → Select your repository
  3. Add Environment Variables: Go to Variables tab and add all variables from your .env file
  4. Done! Application auto-deploys and starts sending daily reports

🔑 API Configuration

API Key Setup

Google Gemini API:

Gmail App Password:

  • Enable 2-Factor Authentication
  • Generate app-specific password in account security settings

News API (Optional):


📁 Project Structure

📦 study-tool/
├── 📁 config/
│   ├── main_prompt.txt
│   ├── mcq_prompt.txt
│   ├── email_template.txt
│   ├── news_queries.txt
│   ├── rss_feeds.txt
│   ├── news_sites.txt
│   └── relevant_keywords.txt
├── 🐍 app.py
├── 📋 requirements.txt
└── 🌐 .env

Configuration Files:

  • config/main_prompt.txt - AI processing instructions
  • config/mcq_prompt.txt - MCQ generation prompt
  • config/email_template.txt - Email body template
  • config/news_queries.txt - Search terms for news
  • config/rss_feeds.txt - RSS feed URLs
  • config/news_sites.txt - News websites to scrape
  • config/relevant_keywords.txt - Keywords for filtering

💻 Usage

  • 🟢 Generate Report - Create today's news summary with fresh content
  • 🔴 Force Generate - Override existing daily report
  • 📊 View Status - Monitor recent report generation history

🎯 Project Objectives

  • Educational Support: Assist IBPS RRB exam candidates with current affairs
  • Automation: Reduce manual effort in news compilation and processing
  • AI Integration: Demonstrate practical application of language models
  • User Experience: Provide accessible explanations for complex financial concepts

🌟Hope you find this stuff useful!!

About

IBPS RRB daily study material generator with Gemini AI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages