In a "headless" solution, the website presentation layer is decoupled from the back-end content management and e-commerce functionality. This is useful, for example, when pulling content data into other systems, making it accessible for display on any output device.
A headless solution is a back-end-only content management system built with a repository that can be accessed, for example, through a REST API, for display in multiple channels. It has a database to read and write content to, and an administration interface where users manage content. A headless solution only allows for the creation, reading, updating, and deleting of content.
Developers can use any front-end tool to present, reuse, and deliver content to any channel. The separation of front and back end makes it easier to update the underlying systems independently. Integrations with different technologies are simplified as developers only work with the REST APIs, and do not need to learn the underlying content management system.
## .NET Core
Optimizely supports separating the delivery application running the public facing rendering from the management application running the content management system and the editing user interface.
**.NET Core for Optimizely** is currently available as a [CTP (Community Test Preview)](🔗).
The management and delivery applications do not share a codebase, instead the communication takes place through REST-based HTTP communication using the **Optimizely Content Delivery API**.
## Content Delivery API
The [Optimizely Content Delivery API](🔗) is a flexible and unified API for content delivery across all types of managed content. It supports Optimizely Content Management System content types, as well as Optimizely Customized Commerce content types like catalog nodes, products, variants, and pricing.
The Content Delivery API also supports rendering of forms built with Optimizely Forms, for example, in single-page application sites built with React or Vue.