This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Demo and Blue Print Application for Pimcore

This demo package is intended to be used by Pimcore newcomers who want to learn Pimcore and see it in action. It's tailored get an overview of Pimcores CMS, DAM, PIM and E-Commerce functionality and can be used as a blue print for E-Commerce Applications built with Pimcore. If you are an experienced Pimcore developer, have a look at the Skeleton linked below instead.

Getting started

COMPOSER_MEMORY_LIMIT=-1 composer create-project --no-scripts pimcore/demo my-project
cd ./my-project
./bin/console assets:install --symlink --relative
./vendor/bin/pimcore-install
./bin/console cache:clear

Docker

You can also use Docker to setup a new Pimcore Installation. You don't need to have a PHP environment with composer installed.

Prerequisits

  • Your user must be allowed to run docker commands (directly or via sudo).
  • You must have docker-compose installed.
  • Your user must be allowed to change file permissions (directly or via sudo).

Follow these steps

  1. Initialize the demo project using the pimcore/pimcore image docker run -u `id -u`:`id -g` --rm -v `pwd`:/var/www/html pimcore/pimcore:php8.3-latest composer create-project --no-scripts pimcore/demo my-project
  2. Go to your new project cd my-project/
  3. Part of the new project is a docker compose file
    • Run echo `id -u`:`id -g` to retrieve your local user and group id
    • Open the docker-compose.yaml file in an editor, uncomment all the user: '1000:1000' lines and update the ids if necessary
    • Start the needed services with docker compose up -d
    • Install the assets by running the script docker compose exec php bin/console assets:install --symlink --relative
  4. Install pimcore and initialize the DB docker compose exec php vendor/bin/pimcore-install --mysql-host-socket=db --mysql-username=pimcore --mysql-password=pimcore --mysql-database=pimcore
    • When asked for admin user and password: Choose freely
    • This can take a while, up to 20 minutes
  5. Clear and warm up the cache with docker compose exec php bin/console cache:clear
  6. ✔️ DONE - You can now visit your pimcore-demo:

Pimcore Platform Version

By default, Pimcore Platform Version is added as a dependency which ensures installation of compatible and in combination with each other tested versions of additional Pimcore modules. More information about the Platform Version can be found in the Platform Version docs.

It might be necessary to update a specific Pimcore module to a version that is not included in the Platform Version. In that case, you need to remove the platform-version dependency from your composer.json and update the module to the desired version. Be aware that this might lead to a theoretically compatible but untested combination of Pimcore modules.

Other demo/skeleton packages

About

The Official Pimcore Demo Package - You're new to Pimcore? That's your entry point! 🤓

Resources

Contributing

Security policy

Stars

111 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages