---
title: Core components | Shopware Community Hub
description: >-
  Explore the fundamental building blocks of Shopware, from the Administration
  interface to the Storefront, Core Framework, and essential system components.…
canonical_url: 'https://hub.shopware.com/learn/unit/solutions-architect-core-components'
---

# Core components

<LearningObjectives>

- Identify the most important **core components** that make up Shopware.
- Understand the **purpose and functionality** of each core component.

</LearningObjectives>

# Core components

Shopware is composed of a robust set of core components that provide the essential functionalities required for a fully operational ecommerce platform. In addition to these core components, Shopware supports a wide range of add-on components that enhance and extend its capabilities. This unit will detail these components, explaining their roles and how they contribute to the overall functionality of Shopware.

## Core Components

### Administration

- **Description**: The administration module provides the backend interface for managing Shopware shops. It is built using Vue.js and offers comprehensive tools for managing products, orders, customers, and configurations.

- **Key Features**:

    - Product Management: Tools for adding, editing, and organizing products.

    - Order Management: Interface for processing and tracking orders.

    - Customer Management: Management of customer information and interactions.

    - Sales channels Management: Allows management of sales channels information and configuration.

    - Configuration: Settings for store operations, themes, and integrations.

Read more: [Shopware administration documentation](https://developer.shopware.com/docs/guides/plugins/plugins/administration/).

### Storefront

- **Description**: The Storefront module is responsible for rendering the front-end of the ecommerce site. It uses Twig templating and Bootstrap for responsive design, ensuring an optimal user experience across various devices.

- **Key Features**:

    - Responsive Design: Ensures optimal display across different devices.

    - Theme Management: Customizable themes for a unique shop appearance.

    - SEO Optimization: Tools to enhance search engine visibility.

    - Checkout Process: Streamlined and secure checkout experience.

    - Login/Register Customer: Provides a section for customers to log in/register.

Read more: [Shopware Storefront Documentation](https://developer.shopware.com/docs/guides/plugins/plugins/storefront/).

### Core Framework

- **Description**: The Core Framework encompasses the fundamental building blocks of Shopware. It includes the essential libraries and services that power the platform.

- **Key Features**:
    - Dependency Injection: Ensures a decoupled and modular codebase.

    - Event System: Facilitates event-driven development, which is crucial for extending Shopware functionalities.

    - Data Abstraction Layer: Provides a consistent interface for database interactions.

### OpenSearch Integration

- **Description**: This component integrates OpenSearch for advanced search capabilities within the shop. It enhances the search functionality, ensuring fast and accurate results.

- **Key Features**:

    - Full-Text Search: Comprehensive search functionality for products and content.

    - Faceted Search: Filtering options to refine search results.

    - Search Suggestions: Predictive text will enhance search usability.

Read more: [Set up Elasticsearch](https://developer.shopware.com/docs/guides/hosting/infrastructure/elasticsearch/elasticsearch-setup.html).

### DBAL (Database Abstraction Layer)

- **Description**: The DBAL component provides an abstraction layer for database interactions, ensuring consistent and efficient data management.

- **Key Features**:

    - Unified Interface: Consistent API for database operations.

    - Data Integrity: Mechanisms to ensure data accuracy and consistency.

    - Scalability: Efficient handling of large datasets and high transaction volumes.

### API

- **Description**: The API module provides RESTful API endpoints, facilitating seamless integration with third-party services and custom applications. This API-first approach ensures flexibility and extensibility.

- **Key Features**:

    - REST API: Standard API for interacting with the platform programmatically.

    - Webhooks: Event-driven notifications for real-time updates.

    - Authentication: Secure access to API endpoints.

### Messenger

- **Description**: The Messenger component handles asynchronous message processing, improving the scalability and reliability of background tasks.

- **Key Features**:

    - Queue Management: Efficient handling of task queues.

    - Scalability: Supports high-throughput message processing.

    - Reliability: Ensures message delivery and processing integrity.

Read more: [Messaging](https://developer.shopware.com/docs/concepts/framework/messaging.html).

### Media Management

- **Description**: The Media Management module allows for efficient handling of media assets within Shopware, including images, videos, and documents.

- **Key Features**:

    - Media Library: Centralized repository for all media assets.

    - Image Optimization: Tools for resizing and optimizing images.

    - Media Integration: Easy integration of media assets into product listings and content.

Read more: [Media](https://docs.shopware.com/en/shopware-6-en/content/media).

### Checkout

- **Description**: The Shopware checkout component manages the entire checkout process, ensuring a smooth and secure transaction experience for customers.

- **Key Features**:

    - Cart Management: Handles adding, removing, and modifying cart items.

    - Payment Processing: Integrates with various payment gateways for secure transactions.

    - Order Management: Processes and tracks customer orders from initiation to completion.

    - Shipping Options: Manages shipping methods and calculates shipping costs.

Read more: [Checkout Concept](https://developer.shopware.com/docs/concepts/commerce/checkout-concept/).

## Core Content Components

### Product Management (src/Core/Content/Product)

- **Description**: Manages all aspects of product data, including creation, editing, categorization, and pricing.

- **Key Features**:

    - Product Attributes: Customizable attributes for detailed product descriptions.

    - Inventory Management: Tracks stock levels and availability.

    - Product Variants: Supports different versions of a product, such as sizes and colors.

### Category Management (src/Core/Content/Category)

- **Description**: Organizes products into categories for better navigation and searchability.

- **Key Features**:

    - Category Tree: Hierarchical organization of product categories.

    - SEO Optimization: Tools for enhancing category visibility in search engines.

    - Custom Fields: Additional fields for detailed category descriptions.

### CMS (Content Management System) (src/Core/Content/Cms)

- **Description**: Allows creating and managing custom content pages within the storefront.

- **Key Features**:

    - Drag-and-Drop Editor: User-friendly interface for creating content pages.

    - Content Blocks: Predefined blocks for adding text, images, videos, and other media.

    - Landing Pages: These are tools for creating targeted landing pages for marketing campaigns.

### Media Management (src/Core/Content/Media)

- **Description**: Handles all media files used in the storefront, including images, videos, and documents.

- **Key Features**:

    - Media Library: Central repository for managing media files.

    - Image Optimization: Tools for resizing and optimizing images.

    - Media Linking: Easy integration of media files into product listings and content.

### Flow (Flow Builder) (src/Core/Content/Flow)

- **Description**: The Flow Builder allows users to automate business processes by defining flows based on specific triggers and actions.

- **Key Features**:

    - Automation: Create automated workflows to handle repetitive tasks.

    - Visual Interface: User-friendly drag-and-drop interface for designing flows.

    - Integration: Seamlessly integrates with other Shopware components and external services.

### Rule (Rule Builder) (src/Core/Content/Rule)

- **Description**: The Rule Builder allows users to create custom rules that can be applied across various Shopware functionalities, such as pricing, promotions, and content visibility.

- **Key Features**:

    - Customization: Define rules based on various conditions and criteria.

    - Flexibility: Apply rules to different parts of the shop, enhancing personalization.

    - User Interface: Intuitive interface for creating and managing rules.

### Product Stream (src/Core/Content/ProductStream)

- **Description**: Product Streams allow dynamic grouping of products based on specific criteria, which can be used for personalized marketing and product recommendations.

- **Key Features**:

    - Dynamic Grouping: Automatically update product groups based on defined criteria.

    - Marketing Integration: Use product streams for targeted marketing campaigns.

    - Flexibility: Create streams based on a variety of product attributes and conditions.

### Product Export (src/Core/Content/ProductExport)

- **Description**: The Product Export component enables the export of product data for use in external systems, marketplaces, and comparison shopping engines.

- **Key Features**:

    - Customizable Templates: Define export templates to meet specific requirements.

    - Scheduled Exports: Automate the export process with scheduled tasks.

    - Integration: Export data in formats compatible with various external platforms.

### Dependency Injection (src/Core/Framework/DependencyInjection)

- **Description**: The Dependency Injection component is a part of the core framework that facilitates the management of dependencies, promoting a modular and maintainable codebase.

- **Key Features**:

    - Decoupling: Reduces direct dependencies between components, enhancing modularity.

    - Configuration: Easily configure and manage dependencies through service containers.

    - Flexibility: Supports the injection of services and parameters into components.

## Core System Components

### User Management (src/Core/System/User)

- **Description**: Manages user accounts, roles, and permissions within the Shopware platform.

- **Key Features**:

    - User Accounts: Creation and management of user accounts.

    - Role-Based Access Control: Assigns permissions based on user roles.

    - Security: Ensures secure access and user authentication.

### System Configuration (src/Core/System/SystemConfig)

- **Description**: Handles global system settings and configurations.

- **Key Features**:

    - Configuration Management: Centralized management of system settings.

    - Environment Variables: Support for different configurations based on environments (development, staging, production).

### Currency Management (src/Core/System/Currency)

- **Description**: Manages currencies used within the Shopware platform.

- **Key Features**:

    - Currency Settings: Configuration of different currencies.

    - Exchange Rates: Management of exchange rates for multi-currency support.

### Snippet Management (src/Core/System/Snippet)

- **Description**: Manages language snippets and translations within the platform.

- **Key Features**:

    - Language Packs: Support for multiple languages and translations.

    - Snippet Editing: Tools for customizing language snippets used in the storefront and administration.

Understanding the core components of Shopware is essential for leveraging its full potential. The core components provide the foundational functionalities necessary for running an eCommerce shop, while add-on components allow for customization and extended capabilities. This modular approach ensures that Shopware can be tailored to meet specific business needs, providing a flexible and scalable eCommerce solution.

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