---
title: Technology stack | Shopware Community Hub
description: >-
  Explore the comprehensive technology stack that powers Shopware, including
  Symfony, Vue.js, OpenSearch, MySQL, and more. Learn how these technologies
  work…
canonical_url: 'https://hub.shopware.com/learn/unit/solutions-architect-technology-stack'
---

# Technology stack

<LearningObjectives>

- Understand the **key technologies and frameworks** used in Shopware.
- Recognize how these technologies **contribute to the platform's functionality and flexibility**.
- Identify the **role of each component** in the overall architecture of Shopware.

</LearningObjectives>

# Technology stack

Shopware is built on a modern and flexible technology stack designed to meet the demands of contemporary ecommerce. This unit will provide an overview of the core technologies and frameworks that form the backbone of Shopware, offering insights into their roles and how they interact within the platform.

## Core Technologies and Frameworks

1. [Symfony](https://symfony.com/)

    - Role: Symfony is a PHP framework used as the foundation for Shopware. It provides a robust, flexible architecture, enabling developers to build scalable and maintainable applications.

    - Why it was chosen:

        - Offers powerful tools for platforms such as Dependency Injection, Event Dispatcher, Twig templating

        - Widely used in the PHP community

        - Relatively lightweight yet powerful

        - The system of bundles allows everything to change within Symfony, including the core itself.

    - Read more: [Symfony Documentation](https://symfony.com/doc)

2. [Vue.js](https://vuejs.org/)

    - Role: Vue.js is a modern progressive JavaScript framework used for building interactive user interfaces, particularly in the administration panel of Shopware. It allows for more interactive and user-friendly interaction in a data-heavy setup over traditional frontends.

    - Why it was chosen:

        - Supports popular traits such as Reactive Data Binding and Component-Based Architecture

        - It integrates well with other libraries giving developers freedom

        - Offers reusable components, increasing development speed

        - Popular within the European PHP community

    - Source: [Vue.js Documentation](https://vuejs.org/guide/introduction.html)

3. [OpenSearch](https://opensearch.org)

    - Role: OpenSearch is used for advanced search capabilities, ensuring fast and accurate search results within the frontend of Shopware shops.

    - Why it was chosen:

        - Full-text search capabilities, offers a RESTful API, optimized for performance

        - Scalability is ensured as it has a distributed architecture

        - Allows for complex data analysis and filtering

    - Source: [OpenSearch Documentation](https://docs.opensearch.org/latest/about/)

4. [MySql](https://www.mysql.com/)

    - Role: MySQL is the primary database system used to store and manage Shopware data.

    - Why it was chosen:

        - The Relational Database ensures data integrity and supports complex queries.

        - It's one of, if not the most widely adopted, database types, reducing the learning curve.

        - Is interchangeable with several other providers, such as MariaDB, Percona, PostgreSQL, as well as AWS Redshift

    - Source: [MySQL Documentation](https://dev.mysql.com/doc/)

5. RESTful API layer

    - Role: Shopware follows an API-first approach, enabling seamless integrations.

    - Why it was chosen:

        - RESTful is a tried and true architectural approach to APIs supported by many languages

        - API schema is easy to document, and endpoints are auto-generatable

    - Source: [Shopware API Documentation](https://developer.shopware.com/docs/guides/development/integrations-api/)

6. Bootstrap

    - Role: Bootstrap is a front-end framework used in Shopware's storefront themes for responsive design and UI components.

    - Why it was chosen:

        - Responsive grid system for flexible layouts, extensive pre-designed components for rapid development, robust documentation, and community support

        - Widely used and popular in the PHP community, Bootstrap makes for a good choice for both frontend developers, as well as more full-stack oriented developers.  

        - Consistency across browsers. This cross-browser compatibility reduces the time and effort needed for debugging and ensures a more uniform user experience.

    - Source: [Bootstrap Documentation](https://getbootstrap.com/docs/5.3/getting-started/introduction/)

<Callout title="Note" type="info">

The default Shopware storefront is still based on Bootstrap 5. However, for custom storefronts and modern frontend projects, using **Tailwind CSS** is officially supported and encouraged.  
Tailwind's utility-first approach enables faster, more flexible styling — especially in combination with Shopware's headless architecture.  
Learn more in the [Shopware Styling Guide](https://developer.shopware.com/frontends/framework/styling.html#utility-css).

</Callout>

## Hosting Requirements: LAMP / LEMP Stack

It is crucial to meet specific server requirements to host Shopware efficiently. Shopware can be hosted on LAMP (Linux, Apache, MySQL, PHP) and LEMP (Linux, Nginx, MySQL, PHP) stacks.

### LAMP Stack

- **Linux**: The operating system for the server. Shopware recommends a 64-bit Linux system.

- **Apache**: The web server used to serve Shopware's web pages.
    - Version: Apache 2.4 or higher.

- **MySQL**: The database system for storing Shopware data.
    - Version: MySQL 8.0.22 or higher / MariaDB 10.11.6 or higher.

- **PHP**: The programming language used to run Shopware.

    - Version: PHP 8.2 or higher.

    - Required Extensions: ctype, curl, dom, fileinfo, gd, hash, iconv, intl, json, libxml, mbstring, openssl, pdo/mysql, session, simplexml, xml, zip, zlib.

### LEMP Stack

- **Linux**: The operating system for the server. A 64-bit Linux system is recommended.

- **Nginx**: An alternative web server to Apache, known for its high performance.

    - Version: Nginx 1.15 or higher.

- **MySQL**: The database system for storing Shopware data.

    - Version: MySQL 8.0.22 or higher / MariaDB 10.11.6 or higher.

- **PHP**: The programming language used to run Shopware.

    - Version: PHP 8.2 or higher.

    - Required Extensions: ctype, curl, dom, fileinfo, gd, hash, iconv, intl, json, libxml, mbstring, openssl, pdo/mysql, session, simplexml, xml, zip, zlib.

For more detailed system requirements, refer to the [Shopware System Requirements Documentation](https://docs.shopware.com/en/shopware-6-en/first-steps/system-requirements).

Shopware leverages a diverse and modern technology stack to provide a flexible, scalable, and powerful ecommerce platform. Understanding the roles and interactions of these technologies, along with the hosting requirements, is crucial for developers and solutions architects to effectively utilize Shopware and extend its capabilities.

For more detailed information on the technologies and their implementation, refer to the [Shopware GitHub Repository](https://github.com/shopware/shopware) and the [Shopware Developer Documentation](https://developer.shopware.com/).
