SlopScupper
00 crowd

auto-news-aggregator

An automated tech news aggregation and summarization tool that delivers concise TL;DR summaries from major tech publications every 12 hours.
Open repo on GitHubgithub.com/4uffin/auto-news-aggregator
Python · ★ 3 · 2 forks · MIT · paperwork by the Cap'mmostly ai (inferred)light human (inferred)works-on-my-machine (inferred)automation
listed 8 hours ago by 4uffin · last checked 59 minutes ago
The owner didn't write this. This repo never submitted itself. The Cap'm found it on a truffle trawl and wrote its paperwork from what GitHub already shows. Picked by hand by the Cap'm on 2026-09-11: a tech news digest that summarizes major tech publications every 12 hours, whose README says "THE REST OF THIS PROJECT WAS CREATED USING GOOGLE GEMINI 2.5 FLASH.". 3 stars; MIT license. The owner did not submit this. Votes count; awards don't until the owner claims it.

I'm not calling your project slop! Geeze, it's a joke... Do you own this repo?

Log in with GitHub as 4uffin. There's no account to make: SlopScupper only asks GitHub who you are (read:user), never sees your code, and keeps just your id, login and avatar. Then you can:

  • Keep it, on your terms. Commit your own slopscore.md (spec) and press Refresh. Your paperwork replaces the Cap'm's, and you can submit it for Slop of the Day.
  • Take it down. One click on Remove. It stays gone; the trawl never brings it back.

Log in with GitHub

Can't log in as the owner? Request a takedown. No login needed, and a trawled listing comes down right away.

GitHub says
An automated tech news aggregation and summarization tool that delivers concise TL;DR summaries from major tech publications every 12 hours.
topics
actionsaiautomatedautomationgithub-actionsgoogle-geminillmpythonpython-scriptpython3xmlxml-parserxml-parsingyamlyml
created
2025-09-10 · pushed 4 months ago · 159 commits · 1 contributor
languages
Python 100%
paperwork
licensereadme 42% health
dependencies
no dependency graph (no manifest, or disabled) · OSV.dev, checked 8 hours ago

Disclosures, inferred by the Cap'm

slopbucket
vibe-coded
category
automation
ai_generated
mostly
human_touch
light
status
works-on-my-machine
language (detected)
python
topic (detected)
actionsaiautomatedautomationgithub-actionsgoogle-geminillmpythonpython-scriptpython3xmlxml-parserxml-parsingyamlyml
license (detected)
mit

The Cap'm's log

The Cap'm wrote this paperwork, not the owner. This repo never submitted itself to SlopScore. The Cap'm picked it by hand: a tech news digest that summarizes major tech publications every 12 hours, whose README says "THE REST OF THIS PROJECT WAS CREATED USING GOOGLE GEMINI 2.5 FLASH.". It carries the MIT license. The disclosures above are his best guess from what GitHub shows.

Is this yours? Commit a real slopscore.md and press Refresh to replace this, or remove the listing in one click. There's no account to make: you log in with GitHub.

README — the repo's own words, folded up so the grading fits on one screen

Warning

THIS README WAS GENERATED BY CLAUDE SONNET 4 AND HAS BEEN DOUBLE CHECKED BY 4UFFIN.

THE REST OF THIS PROJECT WAS CREATED USING GOOGLE GEMINI 2.5 FLASH. EXPECT BUGS AND USE WITH CAUTION!

Tech News Digest 📰🤖

GitHub repo size GitHub Actions Python License AI Powered

An intelligent, automated tech news aggregation and summarization tool that delivers concise TL;DR summaries from major tech publications every 12 hours.

🚀 Quick Start

# Clone and setup
git clone <your-repository-url>
cd tech-news-digest
pip install -r requirements.txt

# Set API key
export OPENROUTER_API_KEY="your-openrouter-api-key"

# Generate your first digest
python generate_digest.py

✨ Features

Feature Description
🌐 Multi-Source Aggregation Pulls from 5+ major tech publications
🧠 AI-Powered Summaries Uses Google Gemini 2.5 Flash for intelligent summarization
🔄 Robust Fallbacks RSS feeds → Web scraping → Error handling
Automated Scheduling Runs every 12 hours via GitHub Actions
📁 Organized Storage Timestamped digests with proper file structure
🔧 Easy Configuration Simple customization of sources and parameters

📊 News Sources

Publication RSS Feed Backup Scraping
📱 The Verge
💼 TechCrunch
🔧 CNET
⚗️ Ars Technica
📟 Engadget

🛠️ Installation & Setup

Prerequisites

Local Setup

  1. Clone the repository:

    git clone <your-repository-url>
    cd tech-news-digest
  2. Create a virtual environment (recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Install dependencies:

    pip install openai feedparser requests beautifulsoup4

    Or create a requirements.txt:

    openai>=1.0.0
    feedparser>=6.0.0
    requests>=2.31.0
    beautifulsoup4>=4.12.0
  4. Configure your API key:

    # Option 1: Environment variable
    export OPENROUTER_API_KEY="your-api-key-here"
    
    # Option 2: Create .env file (add to .gitignore!)
    echo "OPENROUTER_API_KEY=your-api-key-here" > .env

GitHub Actions Setup

  1. Add repository secret:

    • Go to SettingsSecrets and variablesActions
    • Click New repository secret
    • Name: OPENROUTER_API_KEY
    • Value: Your OpenRouter API key
  2. Enable Actions:

    • Go to Actions tab
    • Click I understand my workflows, go ahead and enable them
  3. Manual trigger (optional):

    • Actions tab → Tech News DigestRun workflow

📖 Usage Guide

Command Line Interface

# Basic usage
python generate_digest.py

# The script will:
# 1. Fetch headlines from all configured sources
# 2. Generate AI summary using Gemini 2.5 Flash
# 3. Save to news_digests/digest_YYYY-MM-DD_HH-MM.txt
# 4. Display results in terminal

Expected Output

Starting tech news digest generation...
Fetching headlines from The Verge...
Fetching headlines from TechCrunch...
Fetching headlines from CNET...
Generating summary with LLM...

==================================================
TECH NEWS DIGEST GENERATED
==================================================

Tech News Digest - 2024-01-15 02:30 PM
==================================================

🚀 **Major Product Launches**
• Apple announces new MacBook Pro with M4 chip
• Google releases Gemini Advanced with improved coding

📱 **Mobile & Hardware**
• Samsung Galaxy S25 leaked specifications surface
• iPhone 16 sales exceed expectations in Q4

🤖 **AI & Machine Learning**
• OpenAI unveils GPT-5 preview for developers
• Microsoft integrates Copilot into more Office apps

==================================================

Successfully wrote the digest to news_digests/digest_2024-01-15_14-30.txt
Tech news digest generation completed successfully!

⚙️ Configuration Options

Customizing News Sources

Edit the feeds list in generate_digest.py:

feeds = [
    ("Your Source", "https://example.com/rss.xml"),
    ("The Verge", "https://www.theverge.com/rss/index.xml"),
    # Add more sources here
]

AI Model Configuration

Change the model in generate_digest.py:

# Available models on OpenRouter:
MODEL = "google/gemini-2.5-flash"      # Current (fast, cost-effective)
MODEL = "anthropic/claude-sonnet-4"    # Alternative (higher quality)
MODEL = "openai/gpt-4"                 # Alternative (reliable)

Schedule Customization

Modify the cron expression in .github/workflows/tech-news.yml:

schedule:
  # Every 12 hours (current)
  - cron: '0 */12 * * *'
  
  # Every 6 hours
  # - cron: '0 */6 * * *'
  
  # Daily at 9 AM UTC
  # - cron: '0 9 * * *'
  
  # Weekdays only at 9 AM UTC
  # - cron: '0 9 * * 1-5'

Summary Customization

Adjust the AI prompt for different summary styles:

# In generate_tech_news_digest(), modify the system message:
"content": f"""You are a tech news summarizer focused on [YOUR FOCUS AREA].
Create summaries that emphasize [YOUR PREFERENCES].
Target audience: [YOUR AUDIENCE]
Style: [FORMAL/CASUAL/TECHNICAL]"""

📁 Project Structure

tech-news-digest/
├── generate_digest.py          # Main script
├── .github/
│   └── workflows/
│       └── tech-news.yml      # GitHub Actions workflow
├── news_digests/              # Generated digest files
│   ├── digest_2024-01-15_14-30.txt
│   ├── digest_2024-01-15_02-30.txt
│   └── ...
├── requirements.txt           # Python dependencies
├── README.md                  # This file
├── .gitignore                # Git ignore rules
└── .env.example              # Environment template

🔧 Advanced Usage

Custom Error Handling

The script includes comprehensive error handling:

# Automatic fallback chain:
RSS FeedsWeb ScrapingGraceful Error Messages

# Exit codes:
# 0: Success
# 1: Critical error (API key missing, file write failure, etc.)

Integration with Other Tools

# Pipe output to other tools
python generate_digest.py > daily_digest.txt

# Run with custom timestamp
python generate_digest.py && echo "Digest generated at $(date)"

# Integration with cron (alternative to GitHub Actions)
0 */12 * * * cd /path/to/tech-news-digest && python generate_digest.py

API Usage Optimization

Monitor your OpenRouter usage:

# The script uses these parameters for cost optimization:
max_tokens=1024        # Reasonable limit for summaries
temperature=0.3        # Consistent, focused output
model="gemini-2.5-flash"  # Cost-effective choice

🐛 Troubleshooting

Common Issues & Solutions

Issue Symptoms Solution
Missing API Key OPENROUTER_API_KEY environment variable not set Set environment variable or add to GitHub secrets
Network Issues Unable to fetch current tech news Check internet connection, RSS feeds may be temporarily down
API Quota API-related error occurred Check OpenRouter billing and quota limits
File Permissions Error creating output directory Ensure write permissions in project directory
GitHub Actions Failure Workflow shows red X Check Actions logs, verify secrets are set

Debug Mode

Enable detailed logging by modifying the script:

import logging
logging.basicConfig(level=logging.DEBUG)

# Add this at the start of generate_digest.py

Manual Testing

Test individual components:

# Test RSS feed access
python -c "import feedparser; print(len(feedparser.parse('https://www.theverge.com/rss/index.xml').entries))"

# Test OpenRouter connection
python -c "import openai; client = openai.OpenAI(base_url='https://openrouter.ai/api/v1', api_key='your-key'); print('Connection OK')"

🤝 Contributing

We welcome contributions! Here's how to help:

Development Setup

git clone <your-fork>
cd tech-news-digest
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
pip install pytest black flake8  # Development tools

Contribution Guidelines

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Test your changes thoroughly
  4. Format code: black generate_digest.py
  5. Lint code: flake8 generate_digest.py
  6. Commit changes: git commit -m 'Add amazing feature'
  7. Push to branch: git push origin feature/amazing-feature
  8. Submit a Pull Request

Ideas for Contributions

  • 📰 Add new news sources
  • 🎨 Improve summary formatting
  • 🔧 Add configuration file support
  • 📊 Add analytics/statistics
  • 🌐 Add internationalization
  • 📱 Create web interface
  • 🔔 Add notification systems

📊 Performance & Costs

Typical Usage

  • Runtime: 30-60 seconds per execution
  • API calls: 1 per run (batch processing)
  • Storage: ~2-5KB per digest file
  • Bandwidth: ~100-500KB per run

OpenRouter Costs (Approximate)

Read the rest on GitHub

Scan report · 2026-09-11
  • Prohibited terms or links
  • Repository eligibility
  • slopscore.md paperwork
  • Content policy
  • Risk review

0 comments

log in to comment.

report this listinglog in to report