Magento Blog: Guides and Practical Know-how | Page 154 | mironsoft
Magento Blog
-
Oct 19, 2025
Hashing passwords with MD5 or SHA-1 leaves the door wide open for brute-force and rainbow-table attacks the moment a database leaks. This article explains how bcrypt and Argon2id actually work, how to use PHP's password_hash() correctly in production code, and which mistakes around salts, cost factors, and rehashing happen most often in real-world applications.
-
Oct 19, 2025
Drag and drop feels intuitive for sighted mouse users: grab an element, move it, release it. For keyboard users and screen reader users, this interaction usually does not exist at all, because it is built exclusively on mouse and touch events, without a single one of the involved elements being reachable via Tab or activatable via Enter. Offering product sorting in the admin or a wishlist order exclusively through drag and drop effectively locks an entire user group out of the feature.
-
Oct 19, 2025
Magento 2 ships with EAV, a very flexible model for product and customer data. At the same time, classic flat tables are the better decision for many custom modules. The art lies in not confusing the two.
-
Oct 19, 2025
A network error after a successful payment leads, without protection, to the client repeating the same request and triggering a second payment. This article shows how idempotency keys are implemented in PHP APIs to reliably prevent exactly this problem, including request fingerprinting, response caching, and protection against race conditions.
-
Oct 19, 2025
SwiftUI state management, Jetpack Compose recomposition and the differences between iOS and Android lifecycles demand platform specific knowledge that generic code often ignores. Claude supports native development for both platforms, explains store review requirements, and helps make architecture decisions for shared business logic on solid grounds.
-
Oct 19, 2025
Shell scripts rarely survive code reviews without objections, because standardized checklists are simply missing. This Bash checklist covers all critical dimensions: security, error handling, logging, testability with BATS, and static analysis with ShellCheck, systematically and with a practical focus.
-
Oct 19, 2025
A Hyvä theme follows its own directory structure and build approach: registration.php and theme.xml declare the package, web/tailwind/ carries the single real build step, and Alpine.js runs directly in the template with no compile step. Once you understand Hyvä theme architecture, you can find your way around any Hyvä project immediately.
-
Oct 19, 2025
touch-action decides which built-in gestures like pinch-zoom or scroll the browser handles for an element, and which instead get passed on to your own JavaScript. pointer-events answers a completely different question: whether an element reacts to pointer input at all. Keeping the two apart lets you build swipe carousels and touch widgets that do not fight the browser over every gesture.
-
Oct 19, 2025
Composer can do far more than just install dependencies: through Composer scripts and lifecycle hooks, every step of the installation process, from the very first composer install to the last autoload dump, can be extended with custom automation. Whether a shell command or a PHP callback via Composer\Script\Event, anyone who knows the complete event list replaces manual setup steps, forgotten cache clears, and improvised onboarding instructions with reproducible, versioned automation right inside composer.json.
-
Oct 18, 2025
A single getCurrentPosition call sounds like the easiest thing in the world, but location services sit at the intersection of accuracy, battery consumption and user privacy. Integrating geolocation into a React Native app without a clear concept risks drained batteries, confused users and rejected App Store reviews. This article shows how to request location services correctly on iOS and Android, track efficiently and test reliably.