Hi there 👋

Hey, My name is Soner Sayakci. I work at shopware AG as Developer in the core so my blog contains mostly Shopware related stuff. In my free time I contribute to a lot of projects like Opensearch, FriendsOfShopware. You can find my Salary Transparency here.

Building PHP docker images in a better way with Wolfi-OS

Currently, the de-facto standard to Dockerizing PHP applications is to use the Docker PHP official image. This is maintained by Docker itself and community members and has compiled PHP with no extensions. To install extensions, we have to do this in our Dockerfile: FROMphp:8.2-cliRUN docker-php-ext-install pdo pdo_mysql curlThe helper script docker-php-ext-install does unpack the PHP source code and installs the given extensions. For some extensions like gd, we need also libraries installed like libpng and so on....

April 6, 2024 · 8 min · Shyim

Building your Shopware project in the CI using shopware-cli

In this short blog post, I will show you how you can use shopware-cli to build your Shopware project and deploy it later with Deployer, Docker image whatever you want. But first what is Shopware-CLI? Shopware-CLI is a command line application written in Go. It’s not the same application as bin/console in your Project. It’s kinda a Swiss knife for the Shopware ecosystem. Likewise, it can do a lot of things like:...

August 21, 2023 · 4 min · Shyim

Devenv: Compose a Developer Environment easily for PHP with Nix

I have been using Nix for almost four years and also maintaining some packages at nixpkgs (the primary Nix repository). The Nix learning curve is complicated, so I could not get my colleagues into it. But Devenv made it so easy to compose a developer environment, so I got their attraction, and some of them switched already, and we are looking to where we can use it too. What is Devenv?...

December 25, 2022 · 9 min · Shyim

How to build your Shopware extension assets much faster

When you deliver your Shopware extension to a Shop owner, your extension must contain in src/Resources/public the build assets for the Administration and the Storefront. We committed in the first plugins in Frosh all assets directly in Git. But this led to annoying conflicts, or when you merged two pull requests at once, it didn’t contain both changes. So, for this reason, we removed the build files from all Git repositories again and used shopware-cli to build the files....

December 15, 2022 · 6 min · Shyim

Easy and Cheap Shopware App Hosting using Cloudflare Workers

Shopware Apps are a different way to extend Shopware and can use an optional external App Server to provide additional functionality from your external backend. In this Blog post, I want to show you that a Shopware App with a Backend can be easy and also very affordable. The scary backend server Before the App system, the only way to extend Shopware was to build a plugin. Plugins are like Symfony Bundles with Shopware magic to offer them in Shopware Store....

November 27, 2022 · 6 min · Shyim

Two weeks after using Gitpod only for development

I am working together with pumpi on a project named shopmon (will be announced when it’s done) and he is lazy to set up a local development environment, and I was lazy to show him that. So I gave him an instance of VS Code running on Web on my personal VPS. Everything was fine until I broke somehow IPv6 networking with Docker containers (I really hate networking), so we looked for an alternative....

October 17, 2022 · 8 min · Shyim

How we do nightly automated load tests at Shopware

With the Shopware version 6.4.11.0, we improved the performance overall a lot. To make sure that we still improve, we decided to set up a nightly load testing job to ensure that the application performance stays the same. So we have running since a month an automated load test for Shopware 6 running, and in this post, I want to speak about it. To test the Shopware, we use multiple dedicated Cloud Servers from Hetzner Cloud and wrote some custom tooling around Ansible to spawn the servers before....

May 26, 2022 · 6 min · Shyim

Shopware Rector Project

Last week I attended the first Hockethon (combination of Hackathon + Hockenheim) of the Kellerkinder. That event was unique, and I want to thank Kellerkinder for organizing such an event. If you are interested in what we all did on that event, check out the blog post from Marco I teamed up with Manuel we made pretty fast progress to enable HTTP caching in the store-API. As the Storefront already has HTTP caching, we used the same logic....

May 17, 2022 · 4 min · Shyim

A deep dive into Shopware 6 Caching

In this blog post, I want to dive into the Shopware Caching to clarify how it works and what you have to care about while developing features. We will go from the inner to the outer caching layer in multiple steps and look into them independently. Stage one - the object cache First, we will start with the object cache implemented in serval “route” classes. The “route” classes/controllers are always used in the Shopware context as an entry point for the store-API....

May 2, 2022 · 8 min · Shyim

Easy and fast local Shopware 6 Development on Mac with Symfony CLI

I switched a month ago to macOS as of the M1 hype and wanted to try out the entire Apple ecosystem when I have an iPhone, iPad, and Mac. To get Shopware 6 running, I looked into some Guides for Mac and found out for myself: Why is this all so complicated, and why the hell is anyone using Docker for that. Docker on Mac I saw that many people are using Dockware for their Setup....

February 27, 2022 · 3 min · Shyim