◐ Shell
clean mode source ↗

Pimcore

Pimcore

Open Core Platform for Product Experience Management (PXM)
One platform. Any data. Any channel. Any process.

Packagist Version License: POCL PHP Version

Website · Documentation · Live Demo · Pimcore Inside · Discussions · Report an issue


What is Pimcore

Pimcore is an open core platform for Product Experience Management (PXM). It provides a solid, API-driven foundation for managing digital data and customer experience, combining a Core Framework with a modular set of Core Extensions covering PIM, MDM, DAM, CDP, DXP/CMS, and Digital Commerce — all licensed under the Pimcore Open Core License (POCL). Data is stored independently of the channel and delivered to any output: websites, commerce systems, mobile apps, print, digital signage, or headless consumers via REST and GraphQL. Pimcore Studio provides the unified administration interface for the entire platform.

pimcore-general.png

Pimcore ships with rich out-of-the-box functionality and is designed to be fully customizable and extensible. You define your own data models, build your own templates or consume the APIs, integrate with any IT infrastructure, and tailor the platform to exact project requirements — from a single standalone implementation to a complex multi-system architecture.

Features

All data in Pimcore is organized into three core element types that can be linked and related to each other:

  • Data Objects — manage any structured data based on a class-editor-defined model, either manually or via API. Covers products (PIM/MDM), categories, customers (CDP), orders (Digital Commerce), and articles (DXP/CMS). Delivers consistent data to multiple output channels from a single source. pimcore-objects.png

  • Assets (DAM) — store and manage any file type. Preview 200+ formats directly in Pimcore, auto-generate channel-specific output formats, and enrich files with metadata and versioning. pimcore-assets.png

  • Documents (DXP/CMS) — build pages with Twig templates and inline editables, with full multilingual and multi-site support, plus emails, newsletters, and web-to-print. pimcore-documents.png

The Pimcore Platform

Pimcore is modular. Its modules ship as separate Composer packages (Core Modules & Extensions), all licensed under POCL:

See Pimcore Modules for the full list and Pimcore Editions for module availability per edition (Community, Professional, Enterprise, PaaS).

Architecture

Pimcore follows a layered architecture where multiple interfaces — the Studio administration UI, server-rendered websites, and headless API consumers — all operate on the same core data layer.

Technology stack:

  • Backend — PHP 8.5+, Symfony (MVC, DI, Messenger, Routing, Security)
  • Studio UI — React, TypeScript, Ant Design, Redux, RTK Query, Mercure, Rsbuild
  • Persistence — MySQL/MariaDB via Doctrine DBAL for structured data; Flysystem for file storage (local, S3, and other adapters)
  • Search & indexing — OpenSearch or Elasticsearch via the Generic Data Index
  • Cache — Redis or Symfony Cache
  • Background processing — Symfony Messenger with a configurable message queue backend
  • Real-time — Mercure for server-sent events

Two delivery patterns:

  • Server-rendered — Symfony controllers with Twig templates and Pimcore editables for inline content editing; pages are built and rendered by the Pimcore application itself.
  • Headless — REST and GraphQL APIs via Datahub; Pimcore acts as a pure data and content backend for any frontend or external system.

Both patterns can be used alongside each other in the same project.

See the Architecture documentation for full details including application layers and the data flow between them.

Platform Versions

Each module has its own repository and is released independently. The pimcore/platform-version package bundles a set of specific module versions that are tested and verified to work together, released as a single version such as 2026.1. Major Platform Versions ship once per year; the documentation and demos are based on Platform Versions. Starting with 2026.1, every module carries the same version number as the platform. New projects depend on pimcore/platform-version by default.

How to get started

Local installation

Pimcore 2026.x uses Docker for local development. No local PHP or Composer installation is required.

Prerequisites: Docker and Docker Compose installed, and your user must be allowed to run Docker commands and change file permissions.

See the full Installation guide for necessary installation steps.

Try the live demo

A hosted Enterprise Edition demo is available without any local setup:

https://pimcore.com/en/demo-request

Contributing

We apprechiate all sorts of contributions to the Pimcore Platform.

  • Bug fixes — open a pull request including step-by-step instructions to reproduce the problem in the respective repository.
  • New features — open a discussion with the core team before you start developing.
  • Security vulnerabilities — see our security policy.

Read the contributing guide before submitting a pull request. Contributions require accepting the CLA.

Reporting issues

Issue reporting for all Pimcore repositories is centralized.

  • Public issues — open them in pimcore/platform-version/issues, not in individual repositories. This gives the community and maintainers one place to track, prioritize, and resolve them.
  • Private / customer-specific issues — Pimcore partners and customers can use the Enterprise Portal for non-public information.

Both paths are handled with the same priority; only the visibility differs.

Community & support

License

Pimcore is licensed under the Pimcore Open Core License (POCL).

Copyright Pimcore GmbH.