Work Content platform

A content management system where the content model is data, not code

A headless CMS: administrators define collections and typed fields in the interface, manage records with search and filters and follow dashboards, backed by separate services for content and files and a shared authentication library.

Sector
Content management · Client project
Our part
Architecture, Content service, File service, Authentication library, Admin interface
Built with
Java, Spring Boot, Spring Security, MongoDB, PostgreSQL, React, Ant Design, Nx
Service
Custom software development →
Concept illustration · Fictional identity and sample interface, not the original product. AI-generated artwork.

The starting point

Every new type of content usually means a developer changes the database and the admin screens. The goal was a system where administrators define new collections and fields themselves, and forms, lists and validation follow from that definition.

What we were responsible for

We built the platform: the backend services, the shared authentication library, the admin interface and the monorepo that holds them.

What we built

  • Collections defined in the interface

    A collection is metadata — a list of typed fields. Ten field types are supported, from text, numbers and dates to rich text, files and references to other records.

  • One handler per field type

    Each field type has its own service for validation and storage, picked by a factory, so a new type does not touch the others.

  • Records, search and dashboards

    Records live in MongoDB. The admin interface lists them with search filters and paging, notifies on changes and charts the data on a dashboard.

  • Shared authentication

    A library every service uses: user accounts in PostgreSQL, signed JWT tokens and a security filter built on Spring Security.

  • File service

    Uploads go through their own service, backed by a cloud media store.

The result

The content and file services, the authentication library and the admin interface are built in one Nx monorepo, with container images for the services.

Working on something similar?

Book a 30-minute call or send a brief. If the scope is clear, you get a written fixed quote within one or two business days.