<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="rss.xsl"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Byte8 Stock Radar Blog</title>
        <link>https://magento-stock-radar.byte8.dev/blog</link>
        <description>Byte8 Stock Radar Blog</description>
        <lastBuildDate>Sun, 26 Apr 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <item>
            <title><![CDATA[v1.0.0 — initial release]]></title>
            <link>https://magento-stock-radar.byte8.dev/blog/v1-0-0-release</link>
            <guid>https://magento-stock-radar.byte8.dev/blog/v1-0-0-release</guid>
            <pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[The first public release of Byte8 Stock Radar is out: throttled batched]]></description>
            <content:encoded><![CDATA[<p>The first public release of Byte8 Stock Radar is out: throttled batched
back-in-stock notifications for Magento 2, with per-variant subscriptions,
GraphQL parity, a demand-heatmap admin grid, and Hyvä companion module.</p>
<h2 class="anchor anchorWithStickyNavbar_gijT" id="whats-in-v100">What's in v1.0.0<a href="https://magento-stock-radar.byte8.dev/blog/v1-0-0-release#whats-in-v100" class="hash-link" aria-label="Direct link to What's in v1.0.0" title="Direct link to What's in v1.0.0" translate="no">​</a></h2>
<ul>
<li><strong>Throttled batched dispatch</strong> — <code>random_int(0, throttle_window)</code> per row
so a single restock spreads naturally across the configured window
(default 30 min). 800 subscribers don't all get the email at 09:00.</li>
<li><strong>Per-variant subscriptions on configurables</strong> — server-emitted variant
SKU map plugs straight into Magento Swatches (Luma) or a MutationObserver
on <code>selected_configurable_option</code> (Hyvä).</li>
<li><strong>Demand heatmap admin grid</strong> — sortable by pending subscriber count,
store-aware, EAV-joined product names, with a per-row "Edit product"
link. The merchandiser's reorder report.</li>
<li><strong>Subscription admin grid</strong> — flat listing for support / GDPR investigation.</li>
<li><strong>Customer account "My Stock Notifications" page</strong> — Luma + Hyvä variants,
one-click cancel via the same signed-token route as email unsubscribe.</li>
<li><strong>Full GraphQL surface</strong> — <code>byte8StockRadarSubscribe</code>,
<code>byte8StockRadarUnsubscribe</code>, <code>byte8StockRadarMySubscriptions</code>. Headless +
VelaFront ready.</li>
<li><strong>GDPR-first</strong> — guest emails stored as SHA-256 hash next to plaintext;
data subject deletion is O(1) by <code>email_hash</code>. Signed unsubscribe tokens
with no validity-leak in the response.</li>
<li><strong>Companion modules</strong>:<!-- -->
<ul>
<li><code>byte8/module-stock-radar-hyva</code> — Alpine + Tailwind front-end (free, MIT).</li>
<li><code>byte8/module-stock-radar-plenty</code> — paid bridge for DACH stores running
PlentyONE; extends the heatmap with live ERP data.</li>
</ul>
</li>
<li><strong>i18n</strong>: full English + German translations baked in.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_gijT" id="whats-not-in-v100">What's not in v1.0.0<a href="https://magento-stock-radar.byte8.dev/blog/v1-0-0-release#whats-not-in-v100" class="hash-link" aria-label="Direct link to What's not in v1.0.0" title="Direct link to What's not in v1.0.0" translate="no">​</a></h2>
<ul>
<li><strong>Pingbell compatibility module</strong> — deferred to a future patch release.
When both <code>byte8/module-pingbell</code> and Stock Radar are installed, the
threshold field will start posting admin notifications. Until then the
field is present but inert.</li>
<li><strong>Bulk admin GDPR delete</strong> — a <code>byte8StockRadarDeleteByEmail</code> mutation is
on the roadmap. For now use the SQL pattern in the <a href="https://magento-stock-radar.byte8.dev/docs/advanced/gdpr">GDPR docs</a>.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_gijT" id="why-amber">Why amber<a href="https://magento-stock-radar.byte8.dev/blog/v1-0-0-release#why-amber" class="hash-link" aria-label="Direct link to Why amber" title="Direct link to Why amber" translate="no">​</a></h2>
<p>Eagle-eyed visitors might notice the docs site is amber, while VAT
Validator is green and SEO Suite is indigo. The reasoning: each Byte8
Magento module gets a marketing-site-aligned colour from the same
"product family" palette. Amber for Stock Radar fits the radar / signal /
alerts metaphor. Green for VAT Validator sits in the accounting product
family. Indigo for SEO Suite sits in the discovery family.</p>
<h2 class="anchor anchorWithStickyNavbar_gijT" id="whats-next">What's next<a href="https://magento-stock-radar.byte8.dev/blog/v1-0-0-release#whats-next" class="hash-link" aria-label="Direct link to What's next" title="Direct link to What's next" translate="no">​</a></h2>
<ul>
<li><strong>Tests</strong> — unit coverage for <code>SubscriptionService</code>, observer transition
logic, and the demand collection.</li>
<li><strong>Pingbell compatibility module</strong>.</li>
<li><strong>Bulk GDPR mutation</strong>.</li>
<li><strong>Marketplace listing</strong> on Adobe Commerce + Hyvä Showroom.</li>
</ul>]]></content:encoded>
            <category>release</category>
        </item>
    </channel>
</rss>