使用 Next.js、React 与 TypeScript 构建的 Shopify 无头店铺前端
react-query-shopify — Next.js 电商模板
作者 jasonandrewth
基于 Next.js 与 React Query 的 Shopify 无头店铺前端启动器,通过 Storefront GraphQL API 获取商品数据,并用 GraphQL Codegen 生成类型。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 3
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
通过 React Query 管理 Shopify Storefront GraphQL API 的数据请求
提供 GraphQL Codegen 类型生成脚本,输出到 src/generated/graphql.ts
使用 Tailwind 处理页面样式
仓库采用 MIT 许可,允许免费使用、修改、商用与分发
模板详细介绍
这是一个面向 Shopify 无头电商场景的前端启动模板,使用 TypeScript、Next.js、React 与 React Query 构建,数据来源为 Shopify Storefront GraphQL API,样式层使用 Tailwind。仓库提供开发服务器启动方式(npm run dev 或 yarn dev),默认在本地 3000 端口预览。
模板包含 GraphQL 类型生成流程:运行 npm run graphql:codegen 或 yarn graphql:codegen,会依据 codegen.yml 配置,结合 React Query 与 GraphQL Codegen 生成类型,输出位置为 src/generated/graphql.ts。README 说明生成结果基于旧版 react-query,需要手动把导入改为 @tanstack/react-query 才能正常使用。
接入真实店铺需要在项目根目录的 .env 文件中配置 NEXT_PUBLIC_SHOPIFY_STOREFRONT_ACCESS_TOKEN 与 NEXT_PUBLIC_SHOPIFY_STORE_DOMAIN 两个变量。仓库采用 MIT 许可,可免费使用、修改、商用和分发该版本代码,但演示图片、字体、图标等第三方素材以及域名、托管等外部服务需另行核对许可与费用。
适合你的项目吗?
适用场景
- 为 Shopify 店铺搭建自定义的无头前端界面
- 学习 Next.js 与 React Query 配合 GraphQL API 的数据获取方式
- 在项目中实践 GraphQL Codegen 生成 TypeScript 类型的流程
- 作为电商类 Next.js 项目的起始代码进行二次开发
适合人群
- 熟悉 React 与 Next.js、希望自建 Shopify 店面的开发者
- 需要使用 Shopify Storefront GraphQL API 的前端项目
- 希望引入 GraphQL Codegen 与 React Query 的团队或个人
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
运行 npm run dev 或 yarn dev 启动开发服务器,默认访问 http://localhost:3000
- 2
在项目根目录创建 .env 文件,配置 NEXT_PUBLIC_SHOPIFY_STOREFRONT_ACCESS_TOKEN 与 NEXT_PUBLIC_SHOPIFY_STORE_DOMAIN
- 3
运行 npm run graphql:codegen 或 yarn graphql:codegen 生成类型,输出位于 src/generated/graphql.ts
- 4
生成的类型默认引用旧版 react-query,需手动将导入改为 @tanstack/react-query
- 5
演示图片、字体、图标等第三方素材需按各自许可单独核对
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 使用该模板必须自行注册 Shopify 店铺并获取 Storefront API 访问令牌,在 .env 中配置 NEXT_PUBLIC_SHOPIFY_STOREFRONT_ACCESS_TOKEN 与 NEXT_PUBLIC_SHOPIFY_STORE_DOMAIN 后才能获取真实商品数据;Shopify 账号及 API 调用可能产生平台费用。
- GraphQL Codegen 生成的类型默认引用旧版 react-query,需手动将导入改为 @tanstack/react-query 才能正常使用,属于使用前必须完成的代码调整。
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
NEXT_PUBLIC_SHOPIFY_STOREFRONT_ACCESS_TOKEN=yourshopifytoken
README 原文
https://github.com/jasonandrewth/react-query-shopify/blob/main/LICENCE.txthttps://github.com/jasonandrewth/react-query-shopify/blob/main/README.mdTo make it work simply update the import to `from "@tanstack/react-query"`
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-02。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料一般 · 73 / 100
- 技术栈
- Next.js · React
- 网站类型
- 电商 · 启动器
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2022-11-29
- 截图检查日期
- 2026-10-02
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Next.js。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: b0a61930c4ba2949bd199a0ead84ed87752f7e94b2e4158fae13e315fcc9889a
2026-10-02T07:42:23.750Z
来源文件 / 仓库# 🛍 Next Shopify Storefront A **headless shopify storefront** built with [TypeScript](https://www.typescriptlang.org/), [Next.js](https://nextjs.org/), [React.js](https://reactjs.org/), [React Query](https://react-query.tanstack.com/), [Shopify Storefront GraphQL API](https://shopify.dev/api/storefront) and [Tailwind](https://tailwindcss.com/). ## Getting Started First, run the development server: ```bash npm run dev # or yarn dev ``` Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. You can start editing the page by modifying `pages/index.js`. The page auto-updates as you edit the file. ## Type generation ```bash npm run graphql:codegen # or yarn graphql:codegen ``` This will generate types with react-query and GraphQL Codegen as specified in the `codegen.yml` Check out this [blog post](https://nhost.io/blog/how-to-use-graphql-code-generator-with-react-query) for an intro to this stack. Curently when types are generated they are stored in src/generated/graphql.ts but with the old version of reaxt-query. To make it work simply update the import to `from "@tanstack/react-query"` ``` //.env file in project root NEXT_PUBLIC_SHOPIFY_STOREFRONT_ACCESS_TOKEN=yourshopifytoken NEXT_PUBLIC_SHOPIFY_STORE_DOMAIN=yourshop.myshopify.com ``` ## Deploy on Vercel The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

ai-website-cloner-template
Clone any website with one command using AI coding agents
Next.js · 启动器

Next.js SaaS Starter
Next.js SaaS Starter 是 Next.js 官方维护的 SaaS 起点模板,定位介于学习资源和可直接部署的脚手架之间。
Next.js · SaaS

Next.js Commerce
Next.js Commerce 是 Vercel 团队维护的电商启动模板,基于 Next.js App Router 构建,采用服务端渲染、React Server Components、Server Actions …
Next.js · 电商

Next-js-Boilerplate
Next-js-Boilerplate 是一个面向 Next.js 16、Tailwind CSS 4 和 TypeScript 的启动器,核心定位是开发者体验优先。
Next.js · 启动器

tailwind-nextjs-starter-blog
tailwind-nextjs-starter-blog 是一个面向个人技术博客的 Next.js 与 Tailwind CSS 启动模板,其 v2 版本基于 App Router 与 React Server Comp…
Next.js · 博客

next-forge
Production-grade Turborepo template for Next.js apps.
Next.js · 启动器
