diff --git a/CHANGELOG.md b/CHANGELOG.md index dcac620..ec9a0ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 3.5.0 + +### Changed + +- New apps use Shopify API version 2026-10, the latest stable release, in + place of 2026-07. It applies to Admin API calls and webhooks from the + functions, to `shopify.app.toml` and to the theme block. Apps you already + generated keep their version until you change it. + ## 3.4.0 ### Added diff --git a/README.md b/README.md index 61e873b..e1cc81e 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ npx @mksd0398/nitrogen my-app **[Website](https://mksd0398.github.io/nitrogen/)** · **[Will it be free for my app? Try the cost calculator](https://mksd0398.github.io/nitrogen/#calculator)** · **[Build it with an AI agent](#build-with-an-ai-agent)**
-
+
@@ -59,7 +59,7 @@ The **Firebase alternative** to `shopify app init`. Instead of Remix + Prisma +
- **Polaris web components + App Bridge** — 6 pages, no React, no build step
- **A complete reference inside your app** — every Polaris component and every App Bridge API, each with a working example to copy
- **Theme App Extension** for storefront UI (works on all Shopify plans)
-- **Shopify API 2026-07** — token exchange, OAuth, session tokens, webhooks, GDPR handlers
+- **Shopify API 2026-10** — token exchange, OAuth, session tokens, webhooks, GDPR handlers
- **Single- or multi-tenant** — locked to one store, open to many, or several Shopify apps on one backend
- **API keys** for callers outside Shopify — hashed at rest, scoped, per tenant
- **A test suite in every generated project** — `npm test` covers auth, webhooks, routing and wiring
@@ -262,7 +262,7 @@ app with no traffic costs nothing, and a small app fits inside the free tier.
```
my-app/
-├── shopify.app.toml # Shopify app config (API 2026-07)
+├── shopify.app.toml # Shopify app config (API 2026-10)
├── firebase.json # Hosting rewrites, headers, functions, Firestore
├── firestore.rules # Deny-all: only Cloud Functions touch the data
│
diff --git a/lib/index.js b/lib/index.js
index 8fb0386..464a2c8 100644
--- a/lib/index.js
+++ b/lib/index.js
@@ -1786,7 +1786,7 @@ function printHelp() {
✔ Firebase v2 Cloud Functions — one per API resource, auto-scaling
✔ Multi-tenant — many shops, and several Shopify apps on one backend
✔ Tested — npm test covers auth, webhooks and routing
- ✔ Shopify API 2026-07 — OAuth, webhooks, GDPR
+ ✔ Shopify API 2026-10 — OAuth, webhooks, GDPR
✔ Firestore — sessions, settings, app data
✔ TypeScript or JavaScript — your choice
✔ Scales to zero — an idle app costs nothing; a free tier covers small ones
diff --git a/package-lock.json b/package-lock.json
index b487da3..e806a20 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "@mksd0398/nitrogen",
- "version": "3.4.0",
+ "version": "3.5.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@mksd0398/nitrogen",
- "version": "3.4.0",
+ "version": "3.5.0",
"license": "MIT",
"dependencies": {
"prompts": "^2.4.2"
diff --git a/package.json b/package.json
index f37154d..1a8e017 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@mksd0398/nitrogen",
- "version": "3.4.0",
+ "version": "3.5.0",
"description": "Scaffold, deploy and install a Shopify app on Firebase in one command. Cloud Functions, Firestore and Hosting; Polaris web components and App Bridge; TypeScript or JavaScript. No framework, no server. Not affiliated with or endorsed by Shopify.",
"keywords": [
"shopify",
diff --git a/templates/js/functions/src/shopify.js b/templates/js/functions/src/shopify.js
index 9a02cc0..8c8b431 100644
--- a/templates/js/functions/src/shopify.js
+++ b/templates/js/functions/src/shopify.js
@@ -4,7 +4,7 @@ const { HttpError } = require("./http");
// Shopify API version — update when Shopify releases new versions
// (quarterly: January, April, July, October)
// Docs: https://shopify.dev/docs/api/usage/versioning
-const API_VERSION = "2026-07";
+const API_VERSION = "2026-10";
/**
* Run an Admin API GraphQL query as the calling tenant and return `data`.
diff --git a/templates/shared/extensions/theme-block/shopify.extension.toml b/templates/shared/extensions/theme-block/shopify.extension.toml
index edad35a..23b1220 100644
--- a/templates/shared/extensions/theme-block/shopify.extension.toml
+++ b/templates/shared/extensions/theme-block/shopify.extension.toml
@@ -1,4 +1,4 @@
-api_version = "2026-07"
+api_version = "2026-10"
[[extensions]]
name = "App Block"
diff --git a/templates/shopify.app.toml b/templates/shopify.app.toml
index 7c0913e..b19eb3c 100644
--- a/templates/shopify.app.toml
+++ b/templates/shopify.app.toml
@@ -20,7 +20,7 @@ redirect_urls = [
]
[webhooks]
-api_version = "2026-07"
+api_version = "2026-10"
# App lifecycle
[[webhooks.subscriptions]]
diff --git a/templates/ts/functions/src/shopify.ts b/templates/ts/functions/src/shopify.ts
index 21bc26a..9e7e83e 100644
--- a/templates/ts/functions/src/shopify.ts
+++ b/templates/ts/functions/src/shopify.ts
@@ -4,7 +4,7 @@ import { Context, HttpError } from "./http";
// Shopify API version — update when Shopify releases new versions
// (quarterly: January, April, July, October)
// Docs: https://shopify.dev/docs/api/usage/versioning
-export const API_VERSION = "2026-07";
+export const API_VERSION = "2026-10";
/**
* Run an Admin API GraphQL query as the calling tenant and return `data`.