Hyvä: Guides and Practical Know-how | Page 2 | mironsoft Blog
Hyvä
-
Mar 16, 2026
A freshly scaffolded Hyvä theme ships a CSS bundle of several megabytes in development mode, because Tailwind CSS deliberately does not purge in watch mode. The CSS purge step in the production build scans every phtml and Alpine.js file for class names actually in use and shrinks the stylesheet down to a few kilobytes, provided dynamic class names are handled correctly and the deploy sequence runs cleanly.
-
Feb 26, 2026
A single, pre-checked, or combined terms and conditions checkbox at checkout is a legal risk that gets worse in a Hyvä theme when server-side validation is missing. This article shows how such a mandatory field is implemented on top of Magento's checkout_agreements mechanism, an extended Alpine.js component for multiple mandatory fields, and a server-side PHP plugin, so customers must actively consent and an order cannot complete without a genuine confirmation.
-
Feb 23, 2026
The Hyvä minicart replaces Knockout templates and customer-data sections with a lean Alpine.js component model that loads its data directly through a GraphQL cart query. Anyone customizing it works with minicart.phtml, Alpine state and layout XML instead of Knockout observables, RequireJS modules and UI components, and gets a component that can be extended in a targeted way: icon, slide-in behavior, cross-sell content and quantity changes.
-
Feb 19, 2026
Shipping several brands from a single Hyva codebase sounds simple as long as it is only a different logo. Once color palettes, font sizes, and entire spacing systems need to vary per brand, the choice between CSS variables and separate Tailwind configs decides how maintainable the setup still is a year from now.
-
Feb 6, 2026
Adobe Commerce ships Magento_Rma, a complete return workflow system including a GraphQL API, but the module is entirely absent from Magento Open Source. This article shows how to build a return request form as an Alpine component in a Hyva theme, wire up the requestReturn mutation and the customer.returns query, render a status timeline for customers, and sketch how an Open Source shop without native RMA can build its own simple return process.
-
Jan 30, 2026
Magento's architecture calls itself MVC, but it works in a fundamentally different way. Request flow, FrontController, layout XML as a fourth layer, block system and ViewModel: fully explained.
-
Jan 27, 2026
A single img tag with a fixed width barely covers any modern layout. Here's how to generate srcset and sizes correctly in a Hyvä theme, when a picture element is genuinely needed for art direction, and how both interact with Magento's image resize cache.
-
Jan 26, 2026
Magento B2B ships company management, approval workflows, negotiable quotes and requisition lists by default as Luma components built on Knockout.js and UI components, none of which work in a Hyvä theme because Hyvä removes exactly this layer. Anyone who still wants to map B2B features cleanly in the frontend needs ViewModels for the company context, Alpine.js for interactive states, and targeted layout XML overrides of the Luma templates.
-
Jan 25, 2026
Separate cart logic, or is another language variant enough? This decision gets made too early and too technically far too often. Here's the decision framework and the concrete consequences for theme fallback, caching, and deployment in a Hyvä setup.
-
Jan 23, 2026
Anyone building custom frontend blocks in a Hyvä theme, product recommendations, bespoke widgets or filter logic, will eventually need custom Hyvä GraphQL queries. Structured correctly, preloaded server-side and cached on multiple layers, they deliver fresh data quickly without putting the Full Page Cache or page speed at risk.