Page 218 - Mironsoft Blog
-
Maxim Mironjuk
-
July 14, 2025
Content configuration decides which files Tailwind CSS scans for used utility classes, and therefore directly controls bundle size, build time, and whether styles even reach production. Knowing the pitfalls with globs, monorepo symlinks, and dynamic class names saves hours of debugging missing utility classes on a live system.
-
Maxim Mironjuk
-
July 14, 2025
The Oxide Compiler is the technical foundation of Tailwind CSS v4. Written in Rust, it fully replaces the previous JavaScript compiler and delivers dramatic build acceleration, with automatic file detection and a built-in CSS parser.
-
Maxim Mironjuk
-
July 14, 2025
Git uses the Myers algorithm by default to compute differences between two file versions, but that is far from the only option. Patience diff and histogram diff follow a different approach and often produce noticeably clearer results for moved or reordered code. This article explains how the four algorithms available in Git work internally, where their differences show up in practice, and how to configure the right algorithm permanently.
-
Maxim Mironjuk
-
July 13, 2025
Anyone silencing deprecation warnings with error reporting tricks only pushes real migration work to a later, more expensive point in time. A custom error handler with structured logging, static analysis with PHPStan and Rector, and a prioritized backlog turn deprecations from ignored noise into a measurable, plannable migration process.
-
Maxim Mironjuk
-
July 13, 2025
The choice of state management approach in React Native apps determines boilerplate volume, re-render behavior and maintainability. Zustand and Redux Toolkit solve the same underlying problem with a different philosophy: a minimal, hooks based store versus a structured, battery included Redux ecosystem with DevTools, RTK Query and mature tooling.
-
Maxim Mironjuk
-
July 13, 2025
The Hyvä Tailwind config is the central control point for colors, fonts, spacing and plugins in a Magento 2 frontend, but it also decides whether Tailwind actually finds every used class in the built CSS or whether styles suddenly go missing on the storefront. This article shows how a child theme like Mironsoft/default extends the tailwind.config.js of the Hyvä parent theme via require() and object spread, how theme.extend picks up custom design tokens for colors, fonts and spacing, how plugins like Typography, Forms and Aspect Ratio get registered, and how content paths are configured so Tailwind reliably scans every phtml, JS and Alpine file in the theme and in Hyvä modules.
-
Maxim Mironjuk
-
July 13, 2025
Anyone who only runs PHPUnit from the command line is giving up most of PhpStorm's productivity. Run Configurations, coverage reports right in the editor, test filters down to a single method, and the Docker remote interpreter turn PhpStorm into a complete testing environment, without ever leaving the terminal behind for good reason.
-
Maxim Mironjuk
-
July 13, 2025
Phil Karlton is credited with the line that there are only two hard things in computer science: cache invalidation and naming things. In distributed systems with multiple cache layers, CDN, application cache, and database cache, that problem gets noticeably more complex, because each layer brings its own invalidation logic and its own timing delay. Combining time-based and event-based invalidation with deliberate cache tagging makes the problem manageable, even though it never fully goes away.
-
Maxim Mironjuk
-
July 13, 2025
A container that starts, runs briefly, and then crashes again in an endless loop is one of the most frustrating everyday problems in Docker operations, since the logs often disappear faster than you can read them. A systematic approach narrows down the cause within minutes in most cases, instead of guessing wildly at configuration values.
-
Maxim Mironjuk
-
July 13, 2025
API reviews without a systematic checklist consistently miss the same categories: security aspects, error formats, performance and test coverage tend to get skipped under time pressure. A structured checklist makes reviews faster, more complete and repeatable, and ensures that no PR gets merged with a critical gap.
-