Project
InTheLoop
Overview
InTheLoop is a self-hosted news aggregation platform built from scratch. It pulls articles from 70+ curated RSS sources across nine categories, surfaces trending topics from the past 24 hours using phrase-frequency analysis, and delivers a daily HTML email digest — all from a single Python/Flask codebase with no external dependencies beyond the standard library.
InTheLoop is the direct predecessor to Optio News, which extended this foundation into a multi-user production platform. The core architecture — feed management, trending engine, email scheduler, dark/light theming — originated here.
What It Does
The app launches a local Flask server. On load, it fetches articles from all active RSS sources (cached for 30 minutes), runs a trending topic pass over the past 24 hours of content, and renders a category-filtered news feed with a live sidebar showing what’s gaining traction. Users can hide or restore individual feeds, add new sources from a curated library, and toggle dark/light theme — all preferences persisted across sessions.
At a configured time each day, the scheduler composes and sends an HTML-formatted digest email grouping all articles by category.
Core Features
News Feed
- 70+ curated RSS sources across Technology, Finance, General News, Sports, Science, Business, Entertainment, Music, and Health
- 27+ additional user-addable sources beyond the defaults
- 30-minute article cache balancing freshness with server load
- Live search across titles and summaries (
Ctrl+Kto focus,Escto clear) - Category filter badges for instant topic focus
- Dark/light theme toggle with persistent preference
Trending Topics Engine
- Analyzes articles published in the past 24 hours across all active feeds
- 2–3 word phrase detection with frequency scoring
- Filtered against a 200+ word stopword list to surface signal over noise
- Always-visible sidebar, scrolls independently from the main feed
Feed Management
- View, hide, and restore individual feeds without permanent deletion
- Browse and activate new sources from the curated available-feeds library
- Search/filter feeds by name, URL, or category
- Settings persisted via flat file (
hidden_feeds.txt)
Daily Email Digest
- HTML-formatted digest sent automatically via
smtplib - Articles grouped by category for easy scanning
- Configurable delivery time via the
schedulelibrary
Tech Stack
| Layer | Technology |
|---|---|
| Backend | Python 3.8+ / Flask |
| Frontend | Vanilla JavaScript, CSS3, HTML5 |
| RSS Parsing | feedparser |
smtplib with HTML templates | |
| Scheduling | schedule library |
| Icons / Fonts | Font Awesome 6, Google Fonts (Inter) |
Relationship to Optio News
InTheLoop established the core product model: curated RSS sources, trending phrase extraction, daily email digests, and dark/light theming. Optio News extended this into a multi-user platform with authentication, per-user feed preferences stored in a database, and public production deployment at optio.news. The underlying ideas are the same; the execution is a generation ahead.