47
ArcNews is a comprehensive, production-style news dashboard designed with a modular, full-stack architecture. It integrates multiple modern technologies to deliver a feature-rich user experience. The system is composed of four distinct, independently deployable services that work in concert:
Frontend: A responsive and interactive user interface built with Vite, React, and TypeScript. It handles user authentication, preferences, and the presentation of news articles.
WorkerDBApi: The core backend service, built on Cloudflare Workers and the D1 database. It serves as the primary data source for the frontend, manages data ingestion, and orchestrates calls to other backend services. It refreshes every hour with the help of cronjobs.
NewsAPI: A data-sourcing service written in Python with FastAPI. It fetches and parses news articles from various external RSS feeds and websites, normalizing the data for ingestion.
ContentExtract: A specialized microservice using Node.js and Puppeteer. It extracts the full, clean content from article URLs and generates concise summaries using an LLM.
This project provides a deep dive into the architecture, the inner workings of each service, complete API documentation, and guides for local development and deployment. ArcNews offers real-time news updates, smart filtering, and a personalized news experience, making it an essential tool for staying informed.
Built with