Page 314 - Mironsoft Blog
-
Maxim Mironjuk
-
March 03, 2025
The Oxide Engine is the Rust based core of Tailwind CSS v4 and replaces the old JavaScript scanner with a much faster, memory conscious approach. Understanding how the Oxide Engine scans source code, extracts candidates, and recompiles incrementally helps you write content configurations more deliberately and confidently reason about unusual build behavior.
-
Maxim Mironjuk
-
March 03, 2025
Images account for more than half of the page weight in most Magento stores and directly determine load time, rankings in Google Images, and conversion rate. This article shows how modern formats like WebP and AVIF, responsive srcset delivery, targeted lazy loading, CDN strategy, and clean alt text work together to optimize images both technically and for search engines.
-
Maxim Mironjuk
-
March 02, 2025
Data attribute variants like data-[state=open] let Tailwind react directly to states that a component library or Alpine.js sets in the markup, with no JavaScript manually adding or removing CSS classes. Combined with custom variants through @custom-variant, this produces state-driven UI that cleanly separates state from presentation.
-
Maxim Mironjuk
-
March 02, 2025
CSS Container Queries end the era of viewport-centric responsiveness. A card now knows how wide its container is, and adapts accordingly, whether it appears in a sidebar, a main content area, or a modal. This changes CSS architecture from the ground up.
-
Maxim Mironjuk
-
March 02, 2025
Choosing the wrong authentication method costs more than just security, it costs developer time on every single integration. API keys, bearer tokens, OAuth2 and HMAC signed requests each solve a different problem, and knowing the difference lets you make the right call before the first commit.
-
Maxim Mironjuk
-
March 02, 2025
A modal that visually covers everything but leaves keyboard focus free to wander through the page behind it is not really an overlay for keyboard and screen reader users. They tab through navigation, header, and footer of the background page while the dialog visually floats in front, invisible to their own focus cursor. A correctly implemented focus trap makes sure keyboard focus stays exactly where it visually appears: inside the dialog, until it is deliberately closed.
-
Maxim Mironjuk
-
March 02, 2025
Biometric authentication replaces tedious PIN entry with a glance or a touch, but it requires a clear understanding of the underlying security model. Face ID on iOS and fingerprint prompts on Android never unlock raw biometric data, they unlock a cryptographic key stored locally on the device. This article shows how to implement biometric authentication in React Native with expo-local-authentication and react-native-biometrics, combine it with real server-side verification, and back it with sensible fallbacks.
-
Maxim Mironjuk
-
March 01, 2025
Anyone who stores Composer credentials in the repository risks compromise at every offboarding. Anyone who does not manage them at all ends up fighting broken builds. This article shows how to store auth.json, private repository tokens and Packagist mirror configurations securely as GitLab variables and consume them correctly in pipelines.
-
Maxim Mironjuk
-
March 01, 2025
Hand maintained critical CSS goes stale the moment any layout changes, becoming a silent source of frontend bugs. Whoever integrates critical CSS extraction into the build pipeline gets automatically current, correct CSS for the visible area with every deployment, with no developer intervention required.
-
Maxim Mironjuk
-
March 01, 2025
A normalized OLTP schema is a poor fit for fast analysis across millions of rows. Claude helps design fact and dimension tables, slowly changing dimensions and dbt models that deliver a clean analytical layer. This article covers the path from a relational source system to a performant star schema.
-