Back-Office Content API on AdonisJS
An influencer-marketing media-intelligence platform
Overview
A back-office REST API powering the platform’s administrative dashboard. Built on AdonisJS with a Lucid/PostgreSQL data layer, it exposes authenticated endpoints for managing the editorial content and article feeds surfaced by the media-intelligence product.
The Challenge
The platform needed a structured server tier to manage articles and feeds behind the admin UI, with authentication, CORS handling for a separate single-page front-end, and a clean migration path for its relational schema.
What We Built
An AdonisJS API (adonis-api-app) configured API-only, with: an ArticleController exposing CRUD endpoints; Lucid models for Article, User, and Token (including a NoTimestamp trait for tables that don’t track timestamps); token-based auth via @adonisjs/auth; CORS and body-parser middleware (including a ConvertEmptyStringsToNull middleware); and database migrations for users and auth tokens. Routes, kernel, and app wiring live under start/, with environment-driven configuration in config/.
Technologies & Approach
AdonisJS framework (Ace CLI, Ignitor, Fold IoC), Lucid ORM over PostgreSQL (pg), and the Adonis auth/bodyparser/cors providers. The API-only blueprint keeps it lean and decoupled from the React dashboard that consumes it.
Outcome / Impact
Provided the persistence and access layer for the admin experience, cleanly separated from the front-end and from the platform’s NLP services, enabling the editorial team to manage content surfaced by the wider product.
Capabilities Demonstrated
- Designing and shipping an authenticated REST API in AdonisJS
- Relational modeling with Lucid ORM and versioned migrations
- Token authentication and CORS for a decoupled SPA front-end
- Clean separation of API, dashboard, and ML concerns across repositories