Archive: 2025-06 | Page 16
Archive: June 2025
-
Jun 9, 2025
Anyone who does not cancel fetch requests risks race conditions, memory leaks and inconsistent UI states. AbortController is the native browser API that solves this problem once and for all, for fetch, event listeners and any async operation.
-
Jun 8, 2025
Multipart uploads in GraphQL are technically possible, but in practice they cause more problems than they solve. Anyone uploading files through GraphQL ends up fighting proxies, body size limits, missing caching, and resolvers that are hard to test. This article explains where the real limits lie and how presigned URLs solve the problem more elegantly.
-
Jun 8, 2025
Webfonts are one of the most common causes of poor Core Web Vitals, especially high CLS (Cumulative Layout Shift) values. CSS font-display controls how and when a browser switches to a loaded font. With size-adjust, the visual jump caused by a font swap can be reduced to nearly zero.
-
Jun 8, 2025
In most agency projects, attribute sets grow uncontrolled: every new product type gets its own set, naming conventions are missing, and after two years nobody can say which of the eighty sets are actually still used in production. Teams that instead align attribute sets with product types and business requirements before creation, generate them programmatically through Data Patches and keep them under a clear governance process, keep the EAV structure maintainable, performant and comprehensible for new developers.
-
Jun 8, 2025
A dark mode that resets on the next visit, or one that briefly flashes light before turning dark on load: those are the two most common mistakes. Alpine.js solves both. $persist stores the user preference permanently in localStorage, and a blocking script placed before Alpine.js prevents the flash of wrong theme.
-
Jun 8, 2025
An API-first architecture reverses the classic order of software development: instead of building a user interface first and treating data access as an afterthought, a stable, well documented API comes first, from which any number of frontends, from the classic storefront to a mobile app, can be served. For Magento 2 that means a deliberate break from the monolithic core architecture, in which frontend rendering and business logic are traditionally tightly interwoven. This article shows what an API-first architecture for Magento 2 looks like in practice, where sensible microservice boundaries run, and how an existing store can migrate there step by step.
-
-
Jun 6, 2025
Most developers know set -x only as a quick switch for more output and never use more than the default setting. With a customized PS4, targeted redirection of the trace output and selective switching on and off, set -x turns from a blunt tool into a precise Bash tracing technique that can also be safely used in CI pipelines.
-
Jun 6, 2025
Before using ReactPHP or Swoole in production, it is worth looking at what actually happens underneath. Non-blocking I/O in PHP relies on the same operating system primitives as in any other language: sockets running in non-blocking mode, and stream_select signaling which sockets are ready. Understanding these fundamentals means every async framework becomes clear at a glance.
-
Jun 6, 2025
SolidJS skips the virtual DOM entirely and instead updates individual DOM nodes directly through a fine-grained signal system. TypeScript accompanies this model with precise types for signal access, component props and typed control flow components.