Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/miikorz/DailyNews/llms.txt

Use this file to discover all available pages before exploring further.

DailyNews is a full-stack news aggregator that automatically fetches the top 5 headlines from two major Spanish newspapers — El País and El Mundo — on every request, and combines them with any custom news items you create through the frontend or API. The backend is built with Node.js, Express, TypeScript, and MongoDB, while the frontend uses React 18, Vite, and Tailwind CSS.

Quickstart

Get DailyNews running locally with Docker in under five minutes.

Architecture

Understand the Domain-Driven Design layers and how scraping fits in.

API Reference

Explore every REST endpoint with request/response schemas and examples.

Frontend Guide

Learn how the React frontend is structured and how to extend it.

How It Works

1

Clone and configure

Clone the repository and set your environment variables for the backend port and MongoDB connection string.
2

Start with Docker Compose

Run docker-compose up --build to spin up the frontend (port 3000), backend API (port 3001), and MongoDB together.
3

Browse your news feed

Open http://localhost:3000 to see the latest scraped headlines from El País and El Mundo alongside any custom items you’ve added.
4

Manage news via the UI or API

Use the React frontend or call the REST API directly to create, update, search, and delete news items.

Key Features

Automated Scraping

Fetches the top 5 headlines from El País and El Mundo on every GET /feed request using Cheerio.

Full CRUD API

Six REST endpoints let you create, read, update, delete, and search news items stored in MongoDB.

React Frontend

A React 18 app with real-time debounced search, dark mode, and confirmation modals for destructive actions.

Docker Ready

One docker-compose up --build starts all three services: frontend, backend, and MongoDB.

DDD Architecture

The backend follows Domain-Driven Design with clear application, domain, and infrastructure layers.

Tested

Backend covered by Jest + SuperTest; frontend by Jest + React Testing Library.

Build docs developers (and LLMs) love