Full Access to All Shopware 6 On-Demand Training

In stock
SKU
v12
€749.00
  • Courses included: 16
  • Total video time: 31 hours
  • Access period: 1Y
  • € 749 for 1 year
  • € 24 per hour of video available to you
More Information
Price €749.00
Access period 1 year

Included courses

Frontend development generics

Status: Complete
Last updated: 2023-12-13
Number of lessons: 45
Number of slides: 205
Videos: 5.1 hours

PHP Basics

Status: Complete
Last updated: 2023-03-21
Number of lessons: 39
Number of slides: 109
Videos: 0 hours

PHP Advanced Programming

Status: Complete
Last updated: 2023-08-20
Number of lessons: 74
Number of slides: 484
Videos: 1.5 hours

JavaScript Basics

Status: Complete
Last updated: 2023-07-22
Number of lessons: 9
Number of slides: 39
Videos: 0.1 hours

JavaScript Advanced

Status: Complete
Last updated: 2023-07-22
Number of lessons: 59
Number of slides: 269
Videos: 0.3 hours

Linux Fundamentals

Status: Complete
Last updated: 2023-05-08
Number of lessons: 33
Number of slides: 154
Videos: 0 hours

Docker Essentials

Status: Complete
Last updated: 2023-06-15
Number of lessons: 26
Number of slides: 144
Videos: 0 hours

Shopware 6 Administration Development

Status: Complete
Last updated: 2023-07-22
Number of lessons: 64
Number of slides: 383
Videos: 0.4 hours

Shopware 6 App Development

Status: Complete
Last updated: 2023-01-21
Number of lessons: 25
Number of slides: 134
Videos: 0 hours

Shopware 6 Technical Architecture

Status: Complete
Last updated: 2023-09-23
Number of lessons: 88
Number of slides: 391
Videos: 0 hours

Shopware 6 Backend Development Advanced

Status: Complete
Last updated: 2023-10-09
Number of lessons: 66
Number of slides: 389
Videos: 0 hours

Shopware 6 Backend Development Basics

Status: Complete
Last updated: 2023-09-23
Number of lessons: 67
Number of slides: 362
Videos: 0 hours

Shopware 6 Frontend Development Advanced

Status: Complete
Last updated: 2023-09-10
Number of lessons: 52
Number of slides: 253
Videos: 3.9 hours

Shopware 6 Frontend Development Basics

Status: Complete
Last updated: 2023-09-09
Number of lessons: 105
Number of slides: 375
Videos: 4.7 hours

Shopware 6 Technical Merchant

Status: Complete
Last updated: 2023-09-08
Number of lessons: 29
Number of slides: 108
Videos: 0 hours

Shopware 6 PWA Development

Status: Complete
Last updated: 2023-08-21
Number of lessons: 73
Number of slides: 399
Videos: 14.7 hours

Preview this course

Want to see what this course is like? Checkout our Courseware Demo to preview this course and others.

Preview all courses

Course content

Frontend development generics

  • Introduction to webdesign
  • The difference between frontend and backend
  • Roles in webdevelopment
  • HTML
  • HTML overview
  • HTML 5 boilerplate
  • HTML elements
  • HTML attributes
  • Browser tools
  • Using the Browser its Developer Tools
  • Using the Error Console
  • Monitoring the network requests
  • Dealing with browser caching
  • Elements pane vs HTML source
  • Browser tools
  • Toggling the mobile view
  • Adding some temporary CSS code
  • Forcing an element its state
  • Going incognito
  • Preserving logs
  • Throttling networking traffic
  • Running a Lighthouse scan
  • Inspecting the Application state
  • Blocking requests
  • Troubleshooting webpages
  • CSS
  • CSS basics
  • Responsiveness
  • Sizes in CSS
  • Advanced CSS topics
  • CSS animations
  • Font families
  • CSS Grids
  • flexbox
  • CSS preprocessors
  • LESS
  • SASS
  • Building tools
  • CSS modules
  • Working with PostCSS
  • Introducing Tailwind
  • Tailwind
  • Colors in CSS
  • JavaScript and jQuery
  • jQuery
  • Images
  • Images
  • SVG
  • overview
  • Characters and encodings
  • Characters and encoding
  • Performance
  • How browser caching works
  • Core Web Vitals

PHP Basics

  • Introduction
  • PHP community
  • Basic syntax
  • PHP basics
  • Working with arrays
  • Operators
  • Comments
  • Hinting
  • Global constants
  • Lambdas & closures
  • Coding standards
  • Reviewing code
  • PHP and MySQL
  • Database concepts
  • Assignment: Create a new database table
  • Filesystem
  • Handling files
  • Dealing with JSON
  • Dealing with CSV
  • Dealing with XML
  • Regular expressions
  • Regular expressions
  • PHPStorm
  • Getting a PHPStorm license
  • Overview of PHPStorm
  • Requirements for running PHPStorm
  • Installing PHPStorm
  • Opening a project in PHPStorm
  • Changing the PHP version in PHPStorm
  • Composer settings in PHPStorm
  • Using PHPStorm plugins
  • Enabling the Magento plugin in PHPStorm
  • Opening up the context menu
  • Formatting your code in PHPStorm
  • PHPStorm and its 1000 shortcuts
  • Excluding Magento files from your PHPStorm project
  • Run Configurations in PHPStorm
  • Running a PHP built-in server from PHPStorm
  • Working with PHPStorm File Templates
  • Working with PHPStorm Live Templates
  • Configuring PHPUnit within PHPStorm
  • Generating code via AI
  • Tuning PHPStorm for performance
  • Working with JetBrains Gateway remotely
  • Tips and tricks

PHP Advanced Programming

  • Introduction
  • Learning curve
  • Development environment
  • Syntax
  • PHP 8.2 syntax
  • PHP 7.X syntax
  • PHP 8.0
  • PHP 8.1 syntax
  • Generics
  • Classes
  • Objects and classes
  • Exercice: Create classes for a Author-library
  • Class elements
  • Class types
  • Namespaces
  • Assignment: Use namespaces
  • Built-in classes and interfaces
  • Tools
  • Tools overview
  • Composer
  • Assignment: Implement composer
  • Assignment: Add simple templating
  • Composer
  • Requiring a composer package
  • Semantic versioning
  • install vs update
  • Composer repositories
  • Local composer repositories
  • Class autoloading
  • Popular Composer packages
  • Assignment: Autoloading your classes
  • Assignment: Add Symfony console
  • Assignment: Add logging
  • Assignment: Install the wrong composer package
  • Coding patterns
  • Coding principles
  • PSR Standards
  • SOLID
  • Object calesthenics
  • Design patterns
  • Assignment: Add MVC to your Author app
  • Dependency Injection (DI)
  • Other patterns
  • Event sourcing
  • Imperative vs Declarative
  • MVC
  • Value objects
  • Testing
  • Testing
  • PHPUnit
  • Assignment: Add a functional test to your app
  • Unit tests
  • Assignment: Test your library with PHPUnit
  • Advanced testing
  • Miscellaneous
  • Deployment
  • Behat
  • Codeception
  • Cypress
  • Debugging
  • Debugging basics
  • PHP errors
  • Assignment: Endless loop
  • Assignment: Detect PHP errors in Magento module `Yireo_FaultyViewModels`
  • Assignment: Memory limit
  • Assignment: Unreadable files
  • PHP internals
  • Code analysis
  • Xdebug basics
  • Xdebug
  • Assignment: Debug the FrontController
  • Xdebug profiling
  • Xdebug tracing
  • Exception basics
  • Magento issues
  • Assignment: Dangers of running root
  • SonarQube
  • Debugging tips
  • Miscellaneous
  • Output
  • Performance
  • Security
  • Modernizing WordPress

JavaScript Basics

  • Basics
  • JavaScript built-in objects
  • JavaScript encapsulation
  • Working with objects
  • Other topics
  • Using the DOM
  • Other browser APIs
  • Basic concepts
  • Read-only objects
  • JavaScript engines

JavaScript Advanced

  • Syntax
  • The problem of syntax
  • ES6 Template literals
  • Transpilers
  • TypeScript
  • Node basics
  • Useful JavaScript tools
  • Installing NodeJS
  • Adding NPM packages
  • Some package suggestions
  • Assignment: Create your own CLI
  • Scripts in your `package.json` file
  • Applications
  • Polymer
  • React JS
  • Assignment: Create a simple React application
  • Vue JS
  • Assignment: Create a simple Vue application
  • Svetle
  • Invocation patterns
  • Invocation patterns
  • Binding the keyword this
  • Module pattern
  • Internals
  • ES6 Strict Mode
  • Understandig the prototype chain
  • The Prototype Chain
  • Object properties
  • Proxy
  • Monads
  • Collections
  • Event loop
  • Asynchronous calls
  • AJAX example with React
  • Assignment: Create a React app for your Author AJAX API
  • AJAX call in Vue
  • Assignment: Create an Vue app for your Author AJAX API
  • Promises
  • Assignment: Create a CLI script that makes an AJAX call
  • Events
  • Events
  • Events in Node
  • Node applications
  • Overview of Node
  • Utilities for CLI scripts
  • Assignment: Create a CLI script to navigate the filesystem
  • Other Node topics
  • NPM workspaces
  • NPM packages
  • Module formats
  • Bundlers
  • Bundlers
  • Webpack
  • Vite
  • Rollup
  • Parcel
  • Node in production
  • Assignment: Create an Express-based proxy for your Author AJAX API
  • Process managers
  • Express middleware
  • SSR
  • Serviceworkers
  • Serviceworkers basics
  • ServiceWorker events
  • Other topics
  • Webcomponents
  • Basics
  • Testing
  • Basic of testing
  • Tape
  • Cypress end-to-end testing
  • Debugging
  • Debugging basics

Linux Fundamentals

  • Introduction
  • About Linux
  • Resources
  • Users and groups
  • Commands
  • Basic shell commands
  • Linux permissions
  • Creating shell scripts
  • Small bits
  • Assignment: Diffing and patching
  • Configuration formats
  • UNIX timestamp
  • Networking
  • Networking
  • Services
  • SSH
  • Ready-made stacks
  • Webservers
  • Assignment: Write a simple PHP script to use a remote API
  • PHP-FPM
  • MySQL database
  • Databases
  • ElasticSearch database
  • Redis
  • RabbitMQ
  • Varnish
  • Git versioning
  • Git essentials
  • Assignment: Create a git repository
  • Using GitHub
  • Assignment: Create a GitHub repository
  • Assignment: Upload your files
  • Advanced git usage
  • Git beyond the basics
  • Licensing
  • Open source licenses
  • Remote servers
  • Tools for working remotely
  • Using SSH
  • Windows tips
  • Windows Subsystem for Linux
  • MacOS tips
  • MacOS tools

Docker Essentials

  • Basics
  • introduction
  • Assignment: Register at the Docker Hub
  • Installing Docker
  • Assignment: Docker installation in Ubuntu
  • Assignment: Docker installation in Windows WSL
  • Assignment: PHP installation in Windows WSL
  • Getting started
  • Assignment: Kickstart the Docker examples
  • docker-compose
  • Assignment: Run Apache, PHP, MySQL and ElasticSearch via compose
  • Networking
  • Volumes
  • Creating images
  • Registries
  • Tips & tricks
  • Troubleshooting Docker issues
  • Alternatives
  • Colima for containers to run Magento
  • GitHub Actions
  • Gitpod
  • Clustering Docker containers
  • Introduction
  • Docker Swarm
  • Kubernetes
  • Kubernetes pods
  • Kustomization
  • Kubernetes & Helm
  • Skaffold

Shopware 6 Administration Development

  • Introduction
  • Administration architecture
  • Common tasks in the Administration
  • Adding custom JavaScript
  • JavaScript in the Administration
  • Compiling the administration
  • Plugin configuration
  • Extending a plugin configuration
  • Assignment: Add a plugin configuration
  • Vue architecture
  • Vue essentials
  • Vue components of the Shopware core
  • Assignment: Add a text editor to your plugin configuration
  • Registering Vue components
  • Add JS to your plugin
  • Assignment: Create a dummy JS file in your plugin
  • Registering Vue components
  • Twig JS
  • Assignment: Add a custom component to your plugin configuration
  • Custom component in plugin configuration
  • Assignment: Add a NPM-based component to your plugin configuration
  • Lazy loading of components
  • Working with the Shopware object
  • The Shopware object
  • Shopware.Directive
  • Shopware.Helper
  • Vue mixins
  • Shopware.Service
  • Provide/inject
  • Tips and tricks
  • Administration modules
  • Creating a module
  • Assignment: Create a simple module
  • ACL privileges
  • Lab Exercise
  • Data flow
  • Vuex state
  • Adding an Administration module
  • Admin API
  • Using the Admin API
  • Sync API
  • Creating an Admin API route
  • Assignment: Create **custom** Admin-API Route
  • Entities in the Administration
  • Data layer in Administration
  • Managing your entity in the Administration
  • Listing your entities
  • Admin entity detail page
  • Creating a new entity
  • The Dealers CRUD example
  • Webpack
  • Hot Module Reloading
  • Webpack essentials
  • Adding NPM packages to your JavaScript plugin
  • Adding TypeScript
  • Vue Single File Components
  • Customizing the Administration
  • Extending existing Vue components
  • Overriding existing Vue components
  • Changing a TwigJS template
  • Calling parent methods
  • Injecting into the Vue router
  • Extending the product grid
  • CMS customization
  • Working with CMS content
  • Creating a custom CMS block
  • Assignment: Add a Bootstrap jumbotron CMS Block
  • Creating a custom CMS element
  • Assignment: Create a custom CMS Element
  • Product customization
  • Creating a custom fieldset
  • Importing and exporting products
  • Admin extension SDK
  • Introduction
  • End-to-end testing
  • Introduction to End-to-End testing
  • Using Cypress in the Administration

Shopware 6 App Development

  • Shopware Apps basics
  • Introduction to Shopware Apps
  • Setting your development environment for Shopware Apps
  • Name your App Scripts properly
  • App manifest.xml
  • Converting a Shopware Theme to an app
  • Adding Twig templates to your App
  • Converting a Shopware Plugin to an app
  • Setting up a Shopware app
  • Validating your App
  • Updating the app in Shopware
  • Working with App Scripts
  • Dealing with App permissions
  • Shopware Apps side projects
  • App Scripts
  • Extending product page
  • Expose App configuration to Twig templates
  • Processing the cart with App Scripts
  • Executing App Scripts via the Store API
  • Adding custom fields to your Apps
  • A media Custom Field via App Scripts
  • Discovering the ServiceStubs
  • Developer tricks for App Scripts
  • Reusable scripts via Twig macros
  • Connecting to a SaaS from your Shopware Apps
  • Setup AppTemplate
  • Coding with the AppTemplate
  • Shopware Apps cookbook
  • Playing with permissions

Shopware 6 Technical Architecture

  • Overview
  • Shopware application
  • Shopware stack
  • Shopware versions
  • Licensing
  • Symfony in Shopware
  • Concepts
  • Snippets
  • Symfony configuration
  • Symfony Flex recipes
  • UUID
  • Running projects
  • Requirements
  • Running projects
  • Version control
  • Project steps
  • Environment
  • Environment overview
  • Native Environments
  • Docker solutions
  • Using the core Docker Compose
  • ddev
  • Using Dockware
  • Virtual or Native Environments?
  • Gitpod and Shopware
  • Kubernetes
  • Hypernode
  • Possibility of a hybrid stack
  • Assignment: Setup your own development environment
  • Possibility of a hybrid stack
  • Installation
  • Overview
  • Environment variables
  • Environment variables with Flex
  • Modify ENV variable values
  • Preparing for the installation
  • Installing the Production Template
  • Assignment: Install Shopware via `composer`
  • Setting up an existing project
  • Quiz: Installation
  • Post-install
  • Switch to `dev` mode
  • Install `shopware/dev-tools`
  • Assignment: Install the Shopware `dev-tools`
  • Modify admin user
  • First Run Wizard
  • Configuring Sales Channels
  • Getting demo data
  • Assignment: Install demo-data
  • Installing Shopware Store packages via composer
  • Redis
  • Assignment: Setup Redis
  • Disable all caches
  • Disable the autoupdater
  • Updates
  • Updating Shopware 6
  • Upgrading to Symfony Flex
  • Tools
  • Shopware console
  • Shopware CLI
  • Symfony CLI
  • Plugins
  • useful-plugins
  • Using composer patches
  • Composer replacements
  • Composer plugins
  • 09-frosh-tools
  • Assignment: Install FroshTools
  • Frosh Development Helper
  • Tinker
  • Tinkerwell
  • Database tools
  • In production
  • Deploying Shopware
  • Deployment
  • Explaining Blue Green Deployment
  • Continuous integration
  • Deployment via artifact
  • Deployment with Deployer PHP
  • Deploying plugins
  • Git essentials
  • SSH usage
  • ElasticSearch
  • Message queue
  • Configuring mailers
  • Shopware systemd services
  • Shopware `supervisor` services
  • Keeping secrets
  • Performance
  • MySQL tuning
  • PHP tuning
  • HTTP Cache
  • Varnish
  • Symfony locking
  • Performance tricks
  • Monitoring tools
  • Profiling tools
  • Troubleshooting
  • Deprecated messages in CLI

Shopware 6 Backend Development Advanced

  • Database operations
  • Introduction
  • Using repositories
  • Working with products
  • Assignment: **Inject a repository** into your controller
  • Database migrations
  • Assignment: Create an author table
  • Creating a product entity extension
  • Creating a custom entity
  • Assignment: Create a **author entity**
  • Assignment: Create Sample Data for entities
  • Assignment: Create a CLI plugin for authors
  • Assignment: Create an author controller with authors
  • Creating custom fields
  • Assignment: Add Custom Fields to the author entity
  • Extending Entities
  • Translating Entities
  • Assignment: Add Translation to an existing Entity
  • Entity Associations
  • Entity Extensions
  • Assignment: Using **Entity Extensions** to add Data to an **existing Entity**
  • Assignment: Using **Custom Fields** to add Data to an **existing Entity**
  • Checkout
  • Checkout Overview
  • States and State Machines
  • Checkout - Collectors
  • Assignment: Create custom Checkout **Collector**
  • Checkout - Processors
  • Assignment: Create custom Checkout **Processor**
  • Checkout - Validators
  • Assignment: Create custom Checkout **Validator**
  • Shipping Methods
  • Assignment: Create a __Shipping Method__
  • Payment Methods
  • Assignment: Create __synchronous__ Payment Method
  • Tax overview
  • Scheduled Tasks
  • Executing Scheduled Tasks
  • Creating a Scheduled Task
  • Message queue
  • Asynchronous task management with a message queue
  • Consuming messages
  • Custom message
  • ElasticSearch
  • Introduction to ElasticSearch
  • Versions
  • Alternatives to ElasticSearch
  • Terminology
  • Connecting to ElasticSearch
  • ElasticSearch via Docker
  • Installing ElasticSearch
  • ElasticSearch in PHP
  • ElasticSearch in Shopware
  • Indexing process in Shopware
  • Decorating ElasticsearchProductDefinition
  • Aggregation APIs
  • Analysers
  • Normalizers
  • Index templates and dynamic templates
  • Dynamic templates
  • ElasticSearch scripts
  • Logging in Shopware
  • Clustering ElasticSearch
  • Scaling tips for ElasticSearch
  • ELK stack
  • Kibana
  • HTTP cache
  • Varnish
  • Testing
  • Overview of testing
  • Unit testing
  • Setting up PHPUnit for various tests
  • Integration testing
  • Webtesting with Symfony

Shopware 6 Backend Development Basics

  • Introduction
  • Required Knowledge
  • Key facts about Shopware 6
  • Architecture
  • API overview
  • Structure of the Database
  • Overview of platform bundles
  • Symfony services in Shopware 6
  • Dependency Injection in Shopware
  • Playing with wiring
  • Using factories
  • Extending services
  • About the Symfony kernel
  • Working with Context
  • Working with CLI
  • Tips and tricks
  • Quiz: Architecture
  • Quiz: Service modifications
  • Plugin Basics
  • Introducing plugins
  • Files and folders
  • Creating a plugin
  • Assignment: Create a **Plugin**
  • Adding a plugin configuration
  • Assignment: Create a Plugin **with Configuration**
  • Lifecycle methods in a plugin
  • Managing plugin dependencies
  • Service definition in PHP or YAML
  • Plugin resources
  • Quiz
  • Commands
  • Creating a CLI command
  • Assignment: Create a **CLI Command**
  • Injecting services into a command
  • Assignment: Inject a Service into **CLI Command**
  • Events and subscribers
  • Introduction
  • Finding available Events
  • Event listeners and subscribers
  • Assignment: Change **every Product Name** to "SWAG"
  • Triggering your own event
  • Example with product.loaded event
  • Code example with event dispatching and handling
  • Subscribing to Twig templating events
  • Assignment: Add authors to all pages
  • Routing Architecture
  • Routing overview
  • Creating a JSON controller
  • Assignment: Creating a **JSON** controller
  • Creating a page controller
  • Assignment: Creating a **page controller**
  • Adding flash messages
  • Common Storefront controller tasks
  • Injecting dependencies in a controller
  • Assignment: Inject configuration values
  • Overloading controllers
  • Dealing with SEO URLs
  • Configuration-based routes
  • Store API
  • Using the Store API
  • Examples of using the Store API
  • Creating a Store API route
  • Assignment: Create **custom** Store-API Route
  • OpenAPI annotation
  • Creating a Store API Route
  • Misc
  • Indexing products and other entities
  • Working with the filesystem
  • Dealing with different currencies
  • Troubleshooting
  • Additional DI topics
  • Setter injection
  • Dependency Injection
  • Container extensions
  • Loading additional configuration files

Shopware 6 Frontend Development Advanced

  • Introduction
  • Course Overview
  • Essentials
  • Development setup
  • Creating a theme
  • Exercise: Create a theme
  • Creating a plugin
  • Exercise: Create a plugin
  • Twig essentials
  • Exercise: Override some Twig template
  • Advanced Twig
  • Adding new Twig variables
  • Using theme.json variables in SCSS and Twig
  • Using plugin variables (config.xml)
  • Adding global Twig variables
  • Creating a custom Twig filter
  • Creating a custom Twig function
  • Assignment: Create a custom function to expose the product repository
  • Extending the page
  • Pages and Pagelets
  • Assignment: Create an order counter per product
  • Extending the footer pagelet
  • Using the StorefrontRenderEvent
  • Add a middle name to a customer form
  • Assignment: Add a company field to the customer registration
  • JavaScript essentials
  • JavaScript in the Storefront
  • Assignment: Compile JS sources
  • Adding JavaScript to your Shopware plugin
  • Assignment: Create a custom JS plugin
  • Compiling custom NPM packages
  • Assignment: Implement a countdown
  • Using theme.json variables in JS
  • Assignment: Add a variable to a JS plugin
  • Dealing with view ports in your Shopware JavaScript
  • JavaScript advanced
  • JavaScript in the Storefront
  • Exercise: Compile JS sources
  • Adding JavaScript to your Shopware plugin
  • Exercise: Create a custom JS plugin
  • Using jQuery
  • Using plugin variables (config.xml)
  • Debugging JavaScript
  • Overriding an existing JavaScript plugin
  • Overriding the OffCanvasCart plugin
  • Overriding Tiny Slider
  • Dealing with JavaScript events in Shopware 6
  • Common JavaScript utilities
  • Using AJAX in the Shopware storefront
  • Dealing with view ports in your Shopware JavaScript
  • Using the DOM in your Shopware JavaScript plugin
  • Webpack
  • Webpack essentials
  • Adding NPM packages to your JavaScript plugin
  • Adding TypeScript
  • Shopware Apps
  • Introduction to Shopware Apps
  • App manifest.xml
  • Shopware PWA
  • Introduction to Shopware PWA

Shopware 6 Frontend Development Basics

  • Introduction
  • Introduction to Shopware 6 Frontend Development
  • Prerequisites
  • Terms used in this course
  • Getting started
  • Development setup
  • Assignment: Prepare your environment
  • Disable caching
  • Assignment: Disable caching
  • IDE setup
  • Assignment: Configure your IDE
  • Using the Symfony Profiler
  • Project and Directory structure
  • CLI access
  • Creating a new theme
  • Assignment: Create a new theme
  • Theme configuration
  • Theming basics
  • Theming structure
  • Explaining the theme.json file
  • Assignment: Playing with the JSON
  • Theme inheritance
  • Working with assets
  • Assignment: Copy files from plugin folder
  • Assignment: Copy files from theme folder
  • Translating and multilinguality in Shopware
  • Twig templating
  • Understanding Twig templating
  • Debugging Twig templates
  • Using Twig filters
  • Shopware-specific Twig tags
  • Twig template overrides
  • Assignment: Include your own template
  • Assignment: Override the logo
  • Assignment: Override some Twig template
  • Assignment: Show an icon
  • Assignment: Add a Bootstrap jumbotron
  • Working with assets in Twig
  • Assignment: Display an asset via Twig
  • Remove the phonenumber from the contact form
  • Adding a custom field to the footer
  • Assignment: Override the footer
  • Overriding a logo
  • Assignment: Override the logo
  • Adding your SVG logo
  • Working with variables in Twig
  • CSS & SCSS
  • CSS strategy
  • Hot Module Reloading
  • Assignment: Enable Hot Module Reloading
  • Introducing SCSS
  • Internals of SCSS compilation
  • Modifying SCSS variables
  • Assignment: Modify some SCSS variables
  • Working with Twitter Bootstrap
  • Using theme.json variables in SCSS and Twig
  • Assignment: Add a variable to a SCSS file
  • Assignment: Add a variable to a Twig template
  • Working with assets in CSS
  • Assignment: Display asset via CSS (1/2)
  • Responsive webdesign
  • Adding FontAwesome icons
  • Adding Tailwind CSS to your Shopware frontend
  • Customizing pages
  • Creating and using custom snippets
  • Assignment: Add a snippet
  • Customizing the product details page
  • Assignment: Modify the product page
  • Adding a Custom Field to the product page
  • Assignment: Add a Custom Field
  • Adding a property to the product page
  • Assignment: Add a Property
  • Adding a tab to the product detail page
  • Assignment: Add a custom tab
  • Customizing the category page
  • Add a custom field to a category
  • Assignment: Add a Custom Field
  • Customizing the homepage
  • Assignment: Add a custom Twig template
  • Accessing the request in Twig
  • Assignment: Use request details in Twig
  • Modifying the checkout
  • Add a custom field to the checkout
  • Add a custom block with a shipping method
  • Assignment: Add a block to a shipment method
  • Checkout and sales
  • Cart architecture
  • Dealing with order status
  • Introduction to payment handlers
  • Customizing the revocation policy
  • Performance tuning
  • Performance metrics
  • Caching strategies
  • Optimizing images
  • CSS & JS bundling
  • Using a CDN
  • Minify HTML
  • Optimizing fonts
  • Advanced
  • Using routes
  • Customizing email templates
  • Working with CMS content
  • Using media entities
  • Assignment: Show a custom media image
  • Using flatpickr for the birthday field
  • Adding global Twig variables
  • Creating a custom Twig filter
  • Add a middle name to a customer form
  • Add a custom block with a shipping method
  • Assignment: Add a block to a shipment method
  • Other topics
  • Development tips
  • Setting up PHPStorm
  • Using a logger
  • Using Redis

Shopware 6 Technical Merchant

  • Introduction
  • Shopware overview
  • Shopware plans
  • Shopware versions
  • General administration
  • CMS
  • CMS overview
  • CMS pages
  • Assignment: Customize the product page
  • CMS sections
  • CMS blocks and elements
  • Assignment: Customize the homepage
  • External CMSes
  • Products
  • Products
  • Essential characteristics
  • Product types
  • Categories
  • Categories overview
  • Navigations
  • Assignment: Create a landing page for promoted products
  • Custom Fields
  • Custom Fields overview
  • Assignment: Create a Custom Field for a product
  • Sales
  • Sales in Shopware
  • Quiz: Sales
  • Extensions
  • Extension overview
  • Plugins
  • Themes
  • Apps
  • 08-headless
  • Logic building
  • Business Events
  • Flow Builder
  • Rule Builder

Shopware 6 PWA Development

  • Introduction
  • Vocabulary
  • Introducing Shopware PWA
  • Installation
  • Development tools
  • Shopware PWA installation
  • Configuration
  • Configuration of domains
  • Main commands
  • Different modes for going to production
  • `shopware-pwa plugins` command
  • Package overview
  • Combined sources
  • Vue essentials
  • Vue basics
  • Simple counter
  • Dynamic listing
  • Composition API
  • Simple counter with the Composition API
  • `ref`, `reactive`, `computed` and `toRef`
  • Composables in Shopware PWA
  • Watching values
  • Dealing with Vue slots
  • Vue state management
  • Vue partials
  • Working with Nuxt.js
  • Introduction of NuxtJS
  • Installing NuxtJS
  • Nuxt.js theming
  • Nuxt.js architecture
  • NuxtJS configuration
  • Nuxt.js modules
  • NuxtJS plugins
  • Customize routing
  • NuxtJS content module
  • Theming
  • First steps into Shopware PWA theming
  • Creating layouts
  • View components
  • Overriding a component
  • Working with Storefront UI
  • Override the footer
  • CSS styling
  • Adding Google fonts
  • Overriding Storefront UI components
  • Change meta-data
  • PWA plugins
  • Creating a local plugin
  • Using Shopware plugins in the PWA
  • Creating a Shopware plugin for PWA
  • Working with PWA slots
  • Extend the navigation menu
  • Adding layouts and pages via your PWA plugin
  • Overriding remote PWA plugins
  • Using settings in your plugin
  • API communication
  • Interacting with the Shopware APIs
  • shopware.stoplight.io
  • Examples of using the Store API
  • Setting API defaults
  • Using the API
  • Creating a Store API Route
  • Working with the CMS
  • First peek at CMS architecture
  • Overriding a CMS Block
  • Overriding a CMS Element
  • CMS Jumbotron example
  • Customizing the theme
  • Customizing the category page
  • Customizing the product page
  • Using product functions
  • Checkout overview
  • disable-cart-notifications
  • Advanced topics
  • Interceptors
  • Shopware PWA in production
  • Deployment
  • AJAX calls with SSR
  • Adding the right context
  • Deployment with SSG
  • Dealing with SSR
  • Tips and tricks
  • Building a PWA without Shopware PWA
  • Troubleshooting
  • Best practices