hydrogen-branches
Skill2.2k starsChanged 13 days agoMITView on GitHub
Branch map for the Shopify/hydrogen repo: where the new version of Hydrogen (informally "Hydrogen 3") vs classic Hydrogen (informally "Hydrogen 2") live, the June–October 2026 divergence between them, and which branch to target or rebase onto. Use when picking a base branch, rebasing or retargeting a PR, porting changes between new vs classic Hydrogen, or deciding what happened to the preview branch.
Files
Hydrogen Branch Map
main is the new version of Hydrogen. Classic Hydrogen lives on the 2026-04 back-fix branch.
Both were developed in parallel from June to October 2026, so new vs classic Hydrogen diverged —
details below.
Naming: never write "Hydrogen 3" or "Hydrogen 2" in public artifacts (docs, changelogs, PR descriptions, support replies). Externally they are "the new version of Hydrogen" and "classic Hydrogen" (also "legacy Hydrogen"). The README phrases them by version: "Hydrogen 2026-10 or later" and "Hydrogen 2026-04 and earlier"; public changelogs use neither phrase.
Where everything lives
| Branch | Contents | Use it for |
main | The new version of Hydrogen (2026.10.x as of Oct 2026), framework-agnostic | All new development; PRs formerly targeting preview |
2026-04 | Classic Hydrogen (2026.4.x), React Router 7 only | Classic back-fixes and back-fix releases |
do-not-delete-h2-backup-use-2026-04-branch | Frozen snapshot of pre-takeover main (classic Hydrogen) | Nothing — backup only, never target or delete it |
preview | Dead pre-release branch for the new version | Nothing — its final tree became main via #4162, which merged a rebuilt copy of preview's history (new SHAs), not preview itself |
dist-preview | Compiled templates for the new version | Nothing — generated; force-pushed by main's Release workflow, downloaded by hydrogen setup |
dist | Classic-era compiled templates | Nothing — generated, frozen since 2026-02 |
2026-04 and the backup branch are protected: deletions and force-pushes are blocked, and merges
require an approving review. .github/workflows/release.yml on each branch is the source of truth
for what gets released where.
The new version vs classic Hydrogen
- Classic Hydrogen (
2026.4.x): built specifically for React Router 7. Last major is2026.4— the2026.7major was skipped entirely (no 2026.7.x was ever published). - The new version (
2026.10.0, first released 2026-10-09): a significant rewrite. Framework-agnostic (React Router, Next.js, Astro, Nuxt, SolidStart, SvelteKit) with a different code layout.
Hydrogen uses CalVer YYYY.MAJOR.MINOR, where MAJOR is the quarterly Storefront API release
month (1, 4, 7, 10).
To tell which line a change belongs to: cli, create-hydrogen, hydrogen-codegen,
hydrogen-react, remix-oxygen, and templates/skeleton exist only on 2026-04 (classic) —
a complete list, since the classic line gets no new packages. main (the new version) has
hydrogen and mini-oxygen, among others. A diff touching classic-only paths is classic work.
One exception: shared packages like mini-oxygen exist in both lines' trees but are changed and
released from main only — never merge changes or cut releases for them from 2026-04.
Timeline
- 2026-06-11:
previewforked frommain(ate73813faa) to develop the new version. - 2026-06-16:
preview's history was rewritten with new SHAs. From this point the two lines share no recent history — their merge-base is a 2022 commit. - June – October 2026: parallel development. The new version on
preview, classic Hydrogen onmain. - 2026-10-09, in order:
main(classic Hydrogen) was copied to2026-04, and a second snapshot (do-not-delete-h2-backup-use-2026-04-branch) was kept as backup. #4157 then pointed release automation at2026-04.mainwas overwritten withpreview's exact content (takeover, #4162).- The new version was released as
2026.10.0frommain(#4163).
The divergence gotcha
The new version's tree descends from June's main, not October's. Some classic-Hydrogen fixes
that landed on main between June and October never reached the new version (others, like the
MiniOxygen fixes, were ported). To audit exactly what landed on the classic line after the fork,
use the frozen backup branch:
git log --first-parent --oneline e73813faa..origin/do-not-delete-h2-backup-use-2026-04-branchGit history misleads after the takeover — in both directions. The takeover was a real merge
that kept classic Hydrogen's history reachable (old main as first parent) while taking the tree
wholesale from the rebuilt preview copy — so ancestry no longer implies content. June–Oct
classic-Hydrogen commits show up in git log main and pass git merge-base --is-ancestor even
though their changes are absent from main's tree. The reverse also holds: commits merged into
preview were rebuilt with new SHAs, so a preview SHA (including a PR's GitHub merge commit) is
never an ancestor of main even when its change is there — search by PR number instead:
git log origin/main --grep='(#4022)'. In both cases, verify against file content, not history.
These gotchas are simply the cost of the approach that best preserved history: the takeover merged
with old main as first parent, keeping every commit on both lines reachable. The alternatives
were worse — force-pushing preview over main would have orphaned the classic line's history
entirely, and content-merging dozens of divergent fixes into a foreign code layout meant
hand-porting every one of them, each port a chance to get it wrong.
The rewritten history also breaks retargeted PRs: most preview-based PRs now target main but
were never rebased — they show thousands of commits and a 2022 merge base. Don't plain-rebase
one; that replays ~2,800 old commits. Move only the PR's own commits instead (this works
whichever preview commit the branch started from — only branches cut before the 2026-06-16
rewrite are different). If the PR still targets preview, retarget it to main first:
git rebase --onto origin/main 011651af6 # 011651af6 = preview's final tipTrending
Quiet since September.about the whole repository
Who's talking about Shopify/hydrogen
- Shopify/hydrogen-demo-store“Remix to react-router and other dep upgrades”GitHub · Nov 24, 2025 · 8 reactions
- Shopify/hydrogen-v1“CartProvider V2 ”GitHub · Aug 5, 2022 · 6 reactions
- BuilderIO/builder-shopify-hydrogen“Cannot use the builder/react sdk in the new version of shopify-hydrogen using Remix”GitHub · Feb 14, 2023 · 5 reactions
- vitejs/vite“Use ESM for SSR builds”GitHub · May 12, 2022 · 4 reactions
- Shopify/hydrogen-v1“Move cart queries to an API endpoint”GitHub · Apr 5, 2022 · 4 reactions
The biggest 5 of 53 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 53
Talked about on GitHub, Stack Overflow and Bluesky (53 times).
On GitHub · 50
- Nov 24, 2025Remix to react-router and other dep upgrades — Shopify/hydrogen-demo-store8 reactions · 1 comment
- Aug 5, 2022CartProvider V2 — Shopify/hydrogen-v16 reactions · 15 comments
- Feb 14, 2023Cannot use the builder/react sdk in the new version of shopify-hydrogen using Remix — BuilderIO/builder-shopify-hydrogen5 reactions · 11 comments
- May 12, 2022Use ESM for SSR builds — vitejs/vite4 reactions · 3 comments
- Apr 5, 2022Move cart queries to an API endpoint — Shopify/hydrogen-v14 reactions · 9 comments
45 more on GitHub
- Mar 30, 2022Introduce Link prefetch behavior — Shopify/hydrogen-v14 reactions
- Dec 7, 2021Default preloading queries — Shopify/hydrogen-v14 reactions · 5 comments
- Jun 30, 2023Adds Hydrogen 2.0 (via Remix) Adapter — netlify/remix-compute3 reactions · 16 comments
- Apr 27, 2023createWithCache_unstable not working on Oxygen — sanity-io/hydrogen-sanity-demo3 reactions · 5 comments
- Oct 24, 2022[BUG] Environment variables in `hydrogen.config.ts` don't work with `npm run preview` — Shopify/hydrogen-v13 reactions
- Sep 1, 2022Cloudflare adapter disables known cloudflare worker "compatible" dependencies — solidjs/solid-start3 reactions · 24 comments
- May 19, 2022Consider implementing Link prefetching for mobile — Shopify/hydrogen-v13 reactions · 3 comments
- May 18, 2022Bug [Flight]: Hydration fails when suspended components introduce new client components — react/react3 reactions · 4 comments
- Apr 20, 2022[Hydrogen docs]: Content fixes in source files — Shopify/hydrogen-v13 reactions · 1 comment
- Mar 28, 2022Do not cache GraphQL errors — Shopify/hydrogen-v13 reactions · 2 comments
- Feb 8, 2022Standardize `data` prop across components — Shopify/hydrogen-v13 reactions · 2 comments
- Jan 18, 2022Improvements to API Routing — Shopify/hydrogen-v13 reactions · 2 comments
- Jun 4, 2026chore(deps): bump turbo-stream and @shopify/hydrogen in /packages/tokpulse-hydrogen — Hardonian/TokPulse2 reactions · 5 comments
- Feb 7, 2023[BUG] CartLineQuantityAdjustButton clears lineItem attributes — Shopify/hydrogen-react2 reactions · 5 comments
- Nov 14, 2022Fix preload cache ballooning — Shopify/hydrogen-v12 reactions · 5 comments
- Aug 17, 2022Expose the private token and storefrontId within Hydrogen config — Shopify/hydrogen-v12 reactions · 7 comments
- Jul 14, 2022Improve CSS support in server components — Shopify/hydrogen-v12 reactions · 8 comments
- Jul 12, 2022HMR in server components — Shopify/hydrogen-v12 reactions · 1 comment
- Jul 11, 2022Add assets proxy in Oxygen — Shopify/hydrogen-v12 reactions · 1 comment
- Jun 14, 2022Upgrade to React v18.2 — Shopify/hydrogen-v12 reactions · 2 comments
- May 23, 2022Replace `graphql-tag` with internal `gql` utility — Shopify/hydrogen-v12 reactions · 4 comments
- Mar 10, 2022Support mutations & refreshing RSC responses from API endpoints — Shopify/hydrogen-v12 reactions · 2 comments
- Dec 31, 2021React Server Components — vikejs/vike2 reactions · 7 comments
- Sep 23, 2026feat(cloudflare): Re-export httpServerIntegration from /request — getsentry/sentry-javascript1 reaction · 1 comment
- Jul 31, 2026docs(oxygen): Clarify docs for Hydrogen on Oxygen — getsentry/sentry-docs1 reaction · 1 comment
- Aug 2, 2023Add `languageCode` support to the `CartProvider` component — Shopify/hydrogen-v11 reaction
- Mar 17, 2023BuilderComponent pages render extremely slowly when running locally — BuilderIO/builder-shopify-hydrogen1 reaction · 10 comments
- Oct 6, 2022[CartProviderV2] Fix hydration errors — Shopify/hydrogen-v11 reaction · 1 comment
- Sep 28, 2022Fix `@shopify/hydrogen/experimental` imports — Shopify/hydrogen-v11 reaction
- Jul 11, 2022Fix HMR in client components — Shopify/hydrogen-v11 reaction · 3 comments
- Jun 23, 2022Allow previous minor NPM versions of Hydrogen to be patched — Shopify/hydrogen-v11 reaction
- Jun 19, 2022[Hydrogen docs]: Hardcode variables in `ProductOptionsProvider` example — Shopify/hydrogen-v11 reaction
- Jun 13, 2022Remove duplicate dependency headless-ui — Shopify/hydrogen-v11 reaction · 1 comment
- Jun 8, 2022Improve waterfall detection — Shopify/hydrogen-v11 reaction · 2 comments
- Jun 2, 2022Allow developer to define custom 500 page/Error boundary on the client — Shopify/hydrogen-v11 reaction · 3 comments
- May 27, 2022Improve component bundling and reduce total downloaded files — Shopify/hydrogen-v11 reaction · 6 comments
- May 24, 2022Automatically fix GQL imports in exisiting Hydrogen Projects — Shopify/hydrogen-v11 reaction · 2 comments
- May 22, 2022Generate a default srcset for an image returned by the Shopify CDN — Shopify/hydrogen-v11 reaction · 4 comments
- May 18, 2022Drop the requirement to import from `@shopify/hydrogen/client` — Shopify/hydrogen-v11 reaction
- May 11, 2022Make it compatible with node18 — Shopify/hydrogen-v11 reaction · 3 comments
- May 10, 2022Support optional `priority` prop on Image component — Shopify/hydrogen-v11 reaction · 8 comments
- Apr 21, 2022[BUG] SSR /__rsc? route doesn't work properly if deployed to non-root path on domain — Shopify/hydrogen-v11 reaction · 2 comments
- Apr 8, 2022Foundational work to split hydrogen-ui to its own package — Shopify/hydrogen-v11 reaction · 1 comment
- Feb 16, 2022fix: pass nested image data field from media file to underly Image component — Shopify/hydrogen-v11 reaction · 1 comment
- Feb 15, 2022@cartogram/remove selected variant add to cart button — Shopify/hydrogen-v11 reaction · 1 comment
On Stack Overflow · 2
- Apr 15, 2024Shopify Hydrogen - project no longer launches after updating to 2024.41 vote · 1 answer
- Jan 3, 2025Shopify Admin API Access0 votes
On Bluesky · 1
- Sep 13, 2025If I need to build a storefront, I'd probably check out Medusa [1] or Shopify Hydrogen [2]. Otherwise, probably Elixir/Phoenix and LiveView… — @nezteb.net3 likes and reposts
In this repository33 other files it gives its agents.
- AGENTS.mdAGENTS.md
- examples/nextjs/AGENTS.mdAGENTS.md
- packages/hydrogen/AGENTS.mdAGENTS.md
- scripts/storefront-benchmark-harness/workspace-template/AGENTS.mdAGENTS.md
- templates/react-router/AGENTS.mdAGENTS.md
- examples/hydrogen/e2e/CLAUDE.mdCLAUDE.md
- examples/nextjs/CLAUDE.mdCLAUDE.md
- templates/react-router/CLAUDE.mdCLAUDE.md
- hydrogen-analyticsSkill
- hydrogen-cart-drawerSkill
- hydrogen-cart-metafieldsSkill
- hydrogen-cart-uiSkill
- hydrogen-collection-browserSkill
- hydrogen-customer-accountSkill
- hydrogen-imageSkill
- hydrogen-local-httpsSkill
- hydrogen-marketsSkill
- hydrogen-moneySkill
- hydrogen-oxygenSkill
- hydrogen-predictive-searchSkill
- hydrogen-request-handlersSkill
- hydrogen-routingSkill
- hydrogen-setupSkill
- hydrogen-shop-paySkill
- hydrogen-smoke-testSkill
- hydrogen-storefront-clientSkill
- hydrogen-variant-formSkill
- migrate-to-hydrogen-2026-10Skill
- benchmark-canarySkill
- create-oxygen-templateSkill
- error-reportingSkill
- playwright-testsSkill
- pull-request-standardsSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

