Seite 20 - Monthly Archives: August 2025
-
Maxim Mironjuk
-
August 07, 2025
Ein aufklappendes Mega-Menü, ein sanft einblendendes Modal, ein parallaxenartiger Scroll-Effekt: Für die meisten Nutzer wirken solche x-transition-Animationen in einer Alpine-Komponente elegant und modern. Für Nutzer mit vestibulären Störungen können dieselben Bewegungen jedoch Schwindel, Übelkeit oder Kopfschmerzen auslösen. Die CSS-Media-Query prefers-reduced-motion gibt genau diesen Nutzern die Möglichkeit, ihre Präferenz auf Betriebssystemebene zu hinterlegen. Dieser Artikel zeigt, wie eine Alpine-Komponente diese Präferenz zuverlässig ausliest, x-transition-Animationen konditional deaktiviert, und warum das keine kosmetische Nettigkeit, sondern eine WCAG-Anforderung ist.
-
Maxim Mironjuk
-
August 07, 2025
In JavaScript geht der ursprüngliche Fehler beim Re-Throw verloren – ein Error wird durch einen anderen ersetzt, der Kontext verschwindet. Das error.cause-Feature aus ES2022 löst genau dieses Problem: Es erlaubt strukturierte Fehlerketten, bei denen jeder Layer seinen Kontext beibehält und der Ursprungsfehler durchgereicht wird.
-
Maxim Mironjuk
-
August 07, 2025
Jede professionelle Schriftdatei enthält weit mehr als einen einzigen Zeichensatz: Ligaturen, alternative Glyphen, Kapitälchen und stilistische Sets liegen fertig in der Font-Datei, bleiben aber ungenutzt, solange niemand sie über CSS anspricht. font-variant-alternates und seine Geschwister-Properties machen genau das möglich, ohne JavaScript und ohne zusätzliche Schriftdateien.
-
Maxim Mironjuk
-
August 07, 2025
Die Wahl zwischen Nx, Turborepo und Bazel, und grundsätzlicher zwischen Monorepo und Polyrepo, lässt sich selten pauschal beantworten, sondern hängt stark von Teamgröße, Deployment-Kadenz und vorhandener Tooling-Landschaft ab. Dieser Artikel zeigt, wie sich Claude als strukturierter Sparringspartner für diese Entscheidung einsetzen lässt, inklusive einer skizzierten Migrationsstrategie von einem bestehenden Polyrepo-Setup.
-
Maxim Mironjuk
-
August 07, 2025
Von mysqldump über XtraBackup bis Point-in-Time-Recovery: Wie du ein wasserdichtes MySQL-Backup-Konzept für Magento 2 aufbaust, das auch im Ernstfall hält.
-
Maxim Mironjuk
-
August 07, 2025
Das Tag :latest verschleiert, welcher Code tatsaechlich in einem Container laeuft, und macht Rollbacks zum Ratespiel. Mit SemVer-, Git-SHA- und Datums-Tags, sinnvoll kombiniert, wird jeder Deploy nachvollziehbar und reproduzierbar.
-
Maxim Mironjuk
-
August 07, 2025
Viele Magento-Probleme sehen auf den ersten Blick wie Daten- oder Indexerfehler aus, sind in Wirklichkeit aber Cron-Probleme. Wer Cron Jobs in Magento 2 sauber plant und beobachtet, verhindert stille Ausfälle bei E-Mails, Reindex, Synchronisationen und Imports.
-
Maxim Mironjuk
-
August 06, 2025
Das Async/Await Pattern erlaubt es, asynchronen PHP Code so zu schreiben, dass er wie gewöhnlicher, sequenzieller Code aussieht, obwohl er unter der Haube nicht blockiert. Amp baut dieses Pattern auf PHP Fibers auf und ersetzt verschachtelte Callback Ketten durch einfache async und await Aufrufe, ohne die Vorteile echter Nebenläufigkeit zu opfern.
-
Maxim Mironjuk
-
August 06, 2025
Sobald eine Anwendung mehr als ein Modal gleichzeitig anzeigen muss, etwa einen Bestätigungsdialog über einem bereits geöffneten Detail-Modal, reicht ein einfaches Boolean-Flag nicht mehr aus. Dieser Artikel zeigt, wie ein globaler Alpine-Store einen echten Stack offener Dialoge verwaltet, welche Z-Index- und Fokus-Regeln pro Ebene gelten und wie der Fokus beim Schließen des obersten Modals korrekt zum auslösenden Element zurückkehrt.
-
Maxim Mironjuk
-
August 06, 2025
Self-signed Zertifikate erzeugen ständig Browser-Warnungen und lassen sich nicht für APIs und Service-Worker nutzen. mkcert kombiniert mit einem Docker-Reverse-Proxy löst das Problem vollständig: lokale Domains mit echtem vertrauenswürdigen HTTPS – ohne Cloud, ohne Let's Encrypt, ohne Klickorgien.
-