mesh is a free, open source content management systems (cms) project written in Java and released under Apache-2.0. It has 593 GitHub stars, 124 forks and 135 open issues, and was last pushed 13 hours ago. On this registry it ranks #65 of 70 tracked projects in Content Management Systems (CMS), with 5 head-to-head comparisons available.

What is mesh?

Gentics Mesh is an open-source, Java-based headless content management system that gives developers content APIs instead of a bundled front end, and it is aimed at development teams building websites, mobile apps, IoT applications, smart devices and digital signage solutions.

What it is

Gentics Mesh is a headless CMS written in Java and released under the Apache-2.0 licence. It stores and manages content and exposes it through APIs, so the application that consumes the content is built separately with whatever framework, language and tooling the team prefers. The project describes itself as API-first, and its topic list names api-first, cms, cms-api, gentics-mesh, graphql-api and headless-cms. It lives inside the Java ecosystem and forms one component of Gentics CMP, alongside Gentics CMS and Gentics Portal.

The concrete problem it solves is the coupled content and presentation layer of a traditional CMS. In a conventional setup the CMS also delivers the front end, so content is bound to one rendering channel and typically serves a website and little else. Gentics Mesh removes that layer entirely: content managers work in a channel-agnostic way, and external applications pull the content and handle delivery themselves. The result is content that can be reused across web, mobile apps, audio guides and IoT devices without being rebuilt for each channel. It also replaces hand-rolled infrastructure for permissions, multi-language content and search, which the platform handles rather than the consuming application.

Key capabilities

  • Separate API surfaces for content access and modification, with the README documenting both a REST API and a GraphQL API.
  • Built-in user management that covers administration and editing features and extends to controlling access to content.
  • Platform-level handling of permissions, multi-language content and search, so applications do not implement those concerns themselves.
  • A modern user interface for content editing and administration, giving non-developers a working environment.
  • Technology independence: the delivery layer can be built in any language or framework, and the platform runs on Windows, Linux and macOS.
  • Deployment flexibility, with hosting chosen locally or in the cloud by the operator.
  • Apache-2.0 licensing that permits use, modification and improvement of the software.

Who uses it and how

  • Development teams building multi-channel products, where one content pool feeds a website, a mobile app, a smart device or a digital signage installation.
  • Front-end teams that want full control of the delivery layer and prefer to load content into applications built with their own frameworks instead of inheriting a CMS presentation layer.
  • Organisations that need content managers working through a user interface while developers consume the same content over REST or GraphQL.
  • Operators who need to decide hosting themselves, whether that means running the platform locally or in the cloud.
  • Teams already using the Gentics CMP stack, where Mesh sits alongside Gentics CMS and Gentics Portal.

Getting started

The README directs readers to the Getting Started Guide at https://www.gentics.com/mesh/docs/getting-started/, which explains the basic concepts of Gentics Mesh and serves as the quick-start entry point. Deployment is left to the operator, who chooses between local hosting and the cloud.

How it compares

Gentics Mesh is one of three components in Gentics CMP, sitting alongside Gentics CMS and Gentics Portal, with Gentics CMS and Mesh available as both open-source software and an Enterprise Edition. The facts name no comparable headless CMS products, so on this registry it stands alone rather than against a listed set of alternatives.

When to use it — and when not to

A self-hoster takes on running a Java service and whatever the deployment documentation requires, and should be comfortable reading concepts and setup outside this repository, since installation details live in the external Getting Started Guide. Teams that want a CMS to deliver the front end as well, or that need Gentics Portal Java or PHP, should look elsewhere, because the portal components are only available with the Enterprise Edition. The entry also carries 135 open issues, and no release or tag information is recorded here, so anyone evaluating it should check the project's own issue tracker and documentation before committing.

project readme (upstream, from github) — read inline

Gentics Mesh

Gentics Mesh is your friendly, enterprise-grade, open-source headless CMS

To be honest, it’s more than that: it’s your application development platform to develop your websites, your IoT applications, your mobile apps, your smart devices and your digital signage solutions. With its best-in-class APIs, a complete feature list and great documentation, you’ll get your projects done successfully in less time, no matter which technology you prefer.


stable License Stack Overflow Join the chat at https://gitter.im/gentics/mesh Latest release CLA assistant


Quick Start

Check out our Getting Started Guide for an explanation of the basic concepts of Gentics Mesh.

Table of Contents

Introduction

Gentics CMP

Gentics CMP (Content Management Platform) is composed of the following components: Gentics CMS, Gentics Mesh, and Gentics Portal. Gentics CMS and Mesh are available as both open-source software (OSS) and Enterprise Edition (EE). Gentics Portal Java and PHP can only be acquired with the Enterprise Edition. You can find the EE features here: Open-Source and Enterprise Edition. For more information about the EE, please contact sales@gentics.com.

Here are the links to our open-source projects:

What is a Headless CMS?

Traditional CMSes are "coupled", which means that the CMS also takes care of the presentation layer responsible for delivering the content to the clients. The content and the presentation are closely interlinked. Typically, content managers create and manage their content through tools like "What you see is what you get" (WYSIWYG) editors. The CMS then delivers the content according to the front-end delivery layer built into the CMS. Typically, a traditional CMS supports your websites but not much else.

A pure headless CMS is different, because it offers no front-end capabilities at all, giving you full control of your customer experience via APIs. The CMS typically provides content managers with a presentation and channel agnostic way of managing content. It requires a front-end development team to manage the rest with the frameworks and tools they prefer: The content can be loaded by external applications which handle the content delivery to the client, meaning that the content can be (re-)used by multiple applications and channels (web, mobile app, audio guides, IOT).

Why pick Gentics Mesh?

Gentics Mesh is the platform that holds your content, gives you great APIs to access and modify it, while relieving you from handling permissions, multi-language aspects, search, and much more. You can use its modern user interface that makes content editing and administration enjoyable. At the same time, we don’t lock you in: You choose the technology and programming language you want to implement your application with. You decide whether you want to host it locally or in the cloud. We don’t care if you’re a Windows, Linux or Mac guy or girl. Also, with its Apache 2.0 license, you are free to use it, modify it and improve it.

What makes Gentics Mesh special over other headless CMSes is:

  • its built-in user management not only covers the admin and editor features, but can also be used for handling access to your application.
  • it thinks in content trees (just like websites do), which brings you many things for free: automatic navigation menus, automatic beautiful URLs, built-in link resolving, …​
  • it is scalable and clustering-friendly, so your deployment can grow with your project’s success.

Status

Gentics Mesh is actively developed by a dedicated team at Gentics Software GmbH in Vienna, Austria.

The Gentics Mesh core team consists of the following members:

Installation

For your first steps, please refer to the Quick Start which shows you how to run the demo application.

When you're ready to run your own CMS installation, check out our Administration Guide where you will find everything you need to know, and much more.

Features

Documentation

You can find our extensive documentation at https://www.gentics.com/mesh/docs/

Getting Help

You can chat with us via our gitter channel or create Stack Overflow questions. Issues can be reported via GitHub.

Professional Services

The company behind Gentics Mesh, Gentics Software GmbH is offering commercial services for Gentics Mesh. Please contact us at sales@gentics.com for details.

Product Development

Gentics Mesh already has an extensive set of features, but these features can always be extended. After an extension request has been received from you, it will be evaluated whether the features will be added to the standard product or offered as an individual project.

Consulting

We accompany you in your projects with our experienced Gentics Mesh Consultants. Here we can help you setting up the project, executing together the conception of the structures in the CMS, taking into account your requirements, and offer orientation to best practices.

Maintenance

Product Maintenance includes product error removal. We offer various Product Maintenance Packages - differing between Essential, Professional and Elite Package - depending on the number of Gentics Mesh Nodes.

Support

To help and support you and your developers working and developing applications and online projects using Gentics Mesh we offer a dedicated Developer Support focusing on all the typical questions and needs arising when working with Headless CMS solutions.

Getting started developing with Gentics Mesh

Authentication

First things first: you need to authenticate, otherwise you will not be able to access your data.

You can post your credentials via JSON, use basic auth or send a JWT header - the choice is yours. If you open that URL in a browser, you will most likely authenticate using basic auth.

Using the REST API

The full REST API documentation is available at the Gentics Infoportal.

Using the GraphQL API

The data fetching GraphQL API is a part of the public REST API. The IntrospectionQuery is supported as well, so one can use a REST API tool with GraphQL support to have a code-assisted experience while writing own GraphQL queries.

An example of a GraphQL query looks as follows:

query webroot($path: String) {
  node(path: $path) {
    ... on vehicle {
      fields {
        name
        description
        vehicleImage {
          uuid
          path
          ... on vehicleImage {
            fields {
              image {
                height
                width
                dominantColor
              }
            }
          }
        }
      }
    }
  }
}
---
{
  "path": "/yachts/indian-empress"
}

Contributing to Gentics Mesh

Please read our Contributing Guidelines if you intend to contribute to the project. The guidelines will tell you the legal information, give you instructions on how to set up your IDE in order to build Gentics Mesh, and will tell you necessary knowledge to understand the codebase.

Copyright & License

Copyright (c) 2014-2025 Gentics Software GmbH. Licensed under the Apache License, Version 2.0.

Gentics is a registered trade mark of Gentics Software GmbH.

Frequently asked questions

Is mesh free to use?

mesh is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does mesh do?

Gentics Mesh - The open source headless CMS for developers

What is mesh written in?

mesh is primarily written in Java. Its source is publicly available at https://github.com/gentics/mesh, and it has 593 GitHub stars.