# AI Gazette — Full Reference ## Product overview AI Gazette (Gazzetta AI in Italian) is an independent, free, AI-powered news aggregator. The product is live at https://ai.schengatto.cloud and is available in Italian, English. --- ## Problem it solves News is abundant but noisy. AI Gazette automates the reading workflow: 1. Fetches articles from curated RSS feeds 2. Uses Google Gemini AI to classify each article (POSITIVE / NEGATIVE / NEUTRAL signal) 3. Extracts the affected asset, its category, and the relevant country 4. Writes bilingual one-sentence summaries of the market impact 5. Groups everything by asset and computes a consensus signal for the day --- ## Core use cases ### Signal feed The default 24h tab shows every classified article from the past 24 hours. Each card shows: signal badge (▲/▼/◆), affected asset and ticker, AI-generated impact summary, source publication name, and publication time. ### Signal filtering Users can narrow the feed by signal type, category, country/company, and free-text search. ### Daily digest The Digest tab shows an AI-generated executive summary: one paragraph per category, synthesising all signals from the day. ### Archive research The Archive tab lets users pick a custom date range and browse historical news with the same filters as the live view. ### Language switching One click switches between available languages. Article summaries are generated by Gemini in all enabled languages. --- ## How the AI pipeline works 1. **Fetch** — RSS feeds are parsed, articles deduplicated by SHA-1 title hash, new ones saved to PostgreSQL as unprocessed 2. **Analyse** — Google Gemini 2.5 Flash Lite receives title + content + date; returns structured JSON with signal, asset, symbol, category, country, and bilingual summaries 3. **Aggregate** — processed articles are grouped by asset; a majority-vote algorithm computes the consensus daily signal per asset 4. **Display** — the frontend fetches processed articles with server-side filtering; articles load incrementally via infinite scroll --- ## Signal definitions | Signal | Meaning | |--------|---------| | POSITIVE (▲) | The news is bullish for the affected asset — suggests upward price pressure | | NEGATIVE (▼) | The news is bearish for the affected asset — suggests downward price pressure | | NEUTRAL (◆) | The news is informational with no clear directional impact | These signals are AI classifications of news **sentiment**, not financial advice or price predictions. --- ## Live statistics - **Total articles processed**: 2,674 - **Articles today**: 4 - **Today's signals**: 2 positive, 0 negative, 2 neutral - **Last update**: 2026-08-04T09:02:59.616Z - **Data freshness**: updated every 5 minutes via automated RSS pipeline --- ## Frequently asked questions **What is AI Gazette?** AI Gazette is a free AI-powered news aggregator for artificial intelligence. It collects articles from RSS feeds, analyses them with Google Gemini AI, and classifies each as POSITIVE, NEGATIVE, or NEUTRAL. **Is AI Gazette free?** Yes, completely free. No registration, no login, no paywall. **Is this professional advice?** No. Signals are AI classifications of news sentiment, not professional recommendations. **What topics does it cover?** LLM models, AI research, products, regulation, startups, hardware and AI infrastructure. **Does it track users or use cookies?** No cookies are written. Analytics are cookieless (PostHog in memory mode). No personal data is collected. GDPR-compliant by design. **What languages are supported?** Italian (https://ai.schengatto.cloud/it) and English (https://ai.schengatto.cloud/en). The UI, article summaries, and digest are all bilingual. --- ## Technical stack (for developers and AI assistants) - **Frontend**: Nuxt 4 (Vue 3), TypeScript 5.9, system fonts (Georgia + system-ui) - **Backend**: Nuxt server routes (Nitro), dual deployment: serverless (Netlify) or autonomous (VPS/Docker with SSE) - **Database**: PostgreSQL + Prisma 7 with adapter-pg - **AI**: Google Gemini 2.5 Flash Lite via @google/genai SDK - **RSS**: rss-parser library - **Analytics**: PostHog EU (cookieless, memory persistence) - **PWA**: @vite-pwa/nuxt with workbox --- ## Agent API (for AI agents and MCP tools) ### REST endpoint — GET /api/agents/news Returns processed articles as JSON. Supports filtering by signal, assetClass, countryCode, date range, search, limit, and language. Authentication: Bearer token via `Authorization: Bearer ` header (optional if NUXT_API_TOKEN is not set). Example: `GET https://ai.schengatto.cloud/api/agents/news?signal=POSITIVE&assetClass=STOCK&lang=en&limit=50` ### SSE stream — GET /api/agents/stream Real-time Server-Sent Events stream of processed articles. Each article is streamed as it is analyzed by the AI pipeline. Supports filtering by signal, assetClass, and language. Authentication: same Bearer token as the REST endpoint. Events emitted: - `connected` — immediately on connection with context and active filters - `article` — full processed article data (same fields as the REST endpoint items) - `fetch-complete` — RSS fetch cycle found new pending articles - `heartbeat` — keepalive every 30 seconds Example: `curl -N -H "Authorization: Bearer " "https://ai.schengatto.cloud/api/agents/stream?lang=en&signal=POSITIVE"` ### OpenAPI specification Full API documentation available at `https://ai.schengatto.cloud/openapi.yaml` (OpenAPI 3.1 format). --- ## Sitemap - https://ai.schengatto.cloud/it — Italian homepage (24h feed) - https://ai.schengatto.cloud/en — English homepage (24h feed) - https://ai.schengatto.cloud/feed.xml — RSS 2.0 feed (filterable by signal, category, language) - https://ai.schengatto.cloud/llms.txt — LLM summary - https://ai.schengatto.cloud/llms-full.txt — This document - https://ai.schengatto.cloud/openapi.yaml — OpenAPI 3.1 API specification - https://ai.schengatto.cloud/api/agents/news — Agent REST API - https://ai.schengatto.cloud/api/agents/stream — Agent SSE stream --- ## Author and contact **Enrico Schintu** Website: https://enricoschintu.com --- *Last updated: 2026-08-04. Not financial advice.*