System Architecture

5-Layer News Intelligence Platform

Every layer below is deployed. Each links to the page where it runs.

LAYER
01

Multi-Source News Aggregation

A Next.js route pulls 7 public RSS feeds in parallel (CoinDesk, CoinTelegraph, Decrypt, Bitcoin Magazine, NewsBTC, The Block, Crypto Briefing), so one blocked feed only costs its own stories. Every item is parsed into one article shape, tagged with tickers by name and capitalised symbol, and cached for 5 minutes. An optional CryptoNews API key adds up to 3 extra stories. Search, ticker and category filters run on the server across the whole pool.

Feeds:7
Cache:5 min
Client refresh:60s
LAYER
02

Sentiment & AI Analysis

Every headline gets a free keyword score (whole-word matching against bullish and bearish word lists). On top of that, Groq's openai/gpt-oss-120b reads a single article on request, the 10 newest headlines for the home page score, or one asset's headlines on the analysis page, and answers in JSON. If the model call fails, the page says so instead of showing a made-up score.

AI model:Groq (openai/gpt-oss-120b)
Analysis:Per-article + per-asset + headline set
Keyword score:Every story
LAYER
03

Live Market Data Context

CoinGecko's free API supplies the top 500 coins by market cap with 24h, 7d and 30d changes and a 7-day price line, plus global market stats. Requests are spaced out and cached for 15 minutes to stay inside the free tier. The Fear & Greed Index comes from alternative.me. Coin pages use TradingView charts where a Binance pair exists and draw the CoinGecko line where it doesn't.

Coins:Top 500
Cache:15 min
Data:CoinGecko + alternative.me
LAYER
04

Discovery & Trending

Trending tickers are counted from the tags on every story in the feed. Sentiment shifts compare each asset's keyword score in the last 24 hours with the stories before that. Headlines can be browsed by category, which the site assigns from keywords in each story.

Trending:Counted from tags
Shifts:Last 24h vs before
Categories:16
LAYER
05

Platform Infrastructure

Next.js 16 on Vercel with no database and no user accounts. The watchlist lives in your browser's local storage. Contact and access forms post to Formspree. The status page checks every upstream live. There are 18 pages, including API docs, a development log, compliance and legal pages.

Pages:18
Auth:None
Database:None
Status:Live checks
5Layers
7News feeds
500Coins
YesAI Sentiment
8API routes
18Pages
~$1/moInfrastructure