← All work
Product · 2018–20

News Aggregation API & Article Extraction Service

Overview

The core API server for an internal news-aggregation product, serving content to client apps and ingesting/cleaning articles for readable presentation.

The Challenge

A news app needs a reliable backend that authenticates users, persists structured content, and turns raw web pages into clean, readable articles. The second iteration (“v2”) rebuilt this on a structured MVC framework with migrations and seeds for maintainability.

What We Built

An AdonisJS API application organized into app/, config/, database/ (migrations/seeds) and start/ route definitions. It uses the framework’s authentication, Lucid ORM over PostgreSQL, and Redis for caching/queuing. Article readability/extraction is handled via node-readability, stripping pages down to clean article text. The service is containerized (Dockerfile + docker-compose) and wired to a GitLab CI pipeline.

Technologies & Approach

AdonisJS (Ace CLI, auth, body-parser, CORS, Lucid, Redis modules) on Node.js, PostgreSQL for persistence, Redis for fast access, and node-readability for content cleanup. CI/CD via .gitlab-ci.yml and a build.sh.

Outcome / Impact

Delivered the production API backbone for the news product, pairing with the Forest Admin backoffice for operations, and demonstrating a structured, migration-driven Node backend.

Capabilities Demonstrated

  • Structured MVC API development with AdonisJS + Lucid ORM
  • Web article extraction/readability processing
  • Auth, caching (Redis) and relational persistence
  • Dockerized services with GitLab CI/CD
More work See all →