The latest in Magento land
Do you know that feeling? You worked long and hard on that blog post? Or that super wicked Magento extension? And then you hit publish and... nothing. No one reads it. No one sees it. It just sits there. Well, not anymore! Mage Dispatch is here to help you get your content out there.
Mage Dispatch is a newsletter for the community and by the community. Here you can share links that you think that the community should know about. We will include it in our next newsletter.
-
https://gist.github.com/henkvalk/99429e8831596ef464af00522aff627c
Up to 2.4.7 Magento\Catalog\Model\View\Asset\Image::getMiscPath() hashed the image parameters with the installation's encryption key (hash_hmac); from 2.4.8 on it is a plain md5 over the same string, with the note "New paths are generated without dependency on an encryption key".
Every existing directory under pub/media/catalog/product/cache/ therefore has a name the storefront no longer asks for. The files themselves are unchanged. On a theme that does not resize on render, every product image returns 404 until
bin/magento catalog:images:resize has rebuilt the whole catalogue: 11k images took an estimated 6.5 hours on our shop.This script calculates both names per image variant and renames the directory instead, which takes minutes. It verifies its own arithmetic first: the new name it calculates must equal the one in the url Magento produces, and it aborts without touching anything if a single variant disagrees. A target directory that already exists is filled in with rsync --ignore-existing, so a resize that is already running is never overwritten.
-
https://github.com/DeployEcommerce/module-contact-graphql-recaptcha
This is a backport of the fix Adobe shipped in Magento 2.4.9 (magento/security-package 1.1.8, commit LYNX-941: Implement ReCaptcha for missing GraphQl mutations), packaged as a standalone module so it can be installed without upgrading the platform.
21 -
https://github.com/CleatSquad/magento2-logstream
A Magento 2 module to redirect all logs to StdOut, ideal for dockerized environments.
12 -
https://github.com/SamJUK/m2-meta-security-patches
Composer meta package bundling isolated monthly and emergency security fixes into one dependency via vaimo/composer-patches. Includes install and source-restriction steps, details on patch adjustments and reapplying after vendor resets, plus coverage for CVEs like CosmicSting.
214 -
https://github.com/Zwernemann/magento2-chat
Adds a storefront chat widget that answers customer questions in natural language, performs semantic product search, and can act on the shopper’s behalf (add to cart, reorder, checkout, account updates) via tool calls. Uses Claude with Voyage embeddings and Pinecone, and includes an indexing CLI, admin dashboard, and per-action permissions.
26 -
https://github.com/mage-os-lab/module-blog
Adds posts, categories, tags, authors, scheduled publishing, six storefront widgets, and SEO (meta, Open Graph, Twitter Cards, JSON-LD), plus RSS, sitemap, and a full GraphQL API with URL resolving. Works with Hyvä and Luma.
822 -
https://github.com/grinet/Magento2-CmsVersion
Automatically versions CMS pages and blocks, capturing admin metadata (user, IP, timestamp) and displaying a history grid with one‑click restore. Includes ACL-controlled access and store-aware handling.
14 -
https://github.com/mekkumar/magento2-module-content-inspector
Highlights rendered CMS blocks on the storefront, showing ID, identifier, and title, with one-click open in Admin. Includes installation, usage, and configuration details.
23 -
https://github.com/Siteation/magento2-debugbar
Developer-focused debug bar that records every request (AJAX, GraphQL, REST) into a redacted JSON profile, with sections for queries, timeline, blocks, observers, events, cache hit rates, plugins, and live Alpine/Magewire components. Includes access-key gating, CLI/MCP reports, and Hyvä/Luma support with minimal overhead.
223 -
https://github.com/marsbos/flynt.js
Lightweight 2.2 kB library that brings fine‑grained reactivity to server‑rendered pages using presenter closures and data-fx bindings, no build step required. Provides helpers for state, reactive rendering, keyed list diffing, debouncing, and abortable requests, with examples to get started.
115