内容
# OpenQR
**免费、开源、无水印二维码生成器。** 完全在您的浏览器中运行 — 无跟踪,无需注册,无限制。
[](LICENSE)


大多数在线二维码生成器会以“免费”为诱饵,然后添加水印、限制下载大小、将矢量导出隐藏在付费墙后,或将您的代码路由到他们的服务器,以便您停止付费后代码就会失效。 二维码只是一个开放标准(ISO/IEC 18004),生成它无需任何成本。 **OpenQR 保持这一特性。**
本仓库是 **基本生成器工具** — 参考开源实现。 它故意设计得小巧且易于 fork。
## 主机版本 — 免费 API 和 MCP 服务器
本仓库中的所有内容都是免费的,并且始终保持免费。 [openqr.uk](https://openqr.uk) 上的托管版本添加了一个 **可选** 的账户层,供需要可编辑代码和自动化的用户使用 — 同样是无水印、无过期的理念:
- **动态/可编辑二维码**,免费扫描分析 — 在打印后更改目的地; 无需付费墙,无过期限制。
- **免费 REST API** — 以编程方式生成代码和管理动态代码。 OpenAPI 规范位于 [`/openapi.json`](https://openqr.uk/openapi.json);交互式文档位于 **[openqr.uk/api](https://openqr.uk/api)**。
- **托管 MCP 服务器** — `https://openqr.uk/mcp`(可流式 HTTP,13 个工具)。 直接从 Claude、Cursor 或任何 MCP 客户端生成和管理二维码。 列在 [官方 MCP 注册表](https://registry.modelcontextprotocol.io/v0/servers?search=openqr) 中。
此仓库中的静态生成器永远不会调用任何这些 — 它保持 100% 的客户端(参见 [隐私](#隐私))。
## 功能
- **无水印、无大小限制、无需注册** — 所有功能均为免费
- **设计私密** — 二维码完全在您的浏览器中生成;内容从未触及服务器
- **任意导出** — PNG / JPEG / WebP高达 4096px,以及真正的矢量 **SVG** 和 **PDF**
- **完全样式定制** — 颜色、渐变、点和角样式、徽标嵌入、“扫描我”框架
- **智能输入** — 粘贴链接或文本,类型自动检测
- **丰富有效载荷** — URL、文本、电子邮件、电话、短信、WhatsApp、Wi-Fi 和基于地图的位置选择器
- 一键复制、可共享的设计链接、浅色/深色、响应式、可通过键盘访问
## 快速开始
```bash
pnpm install
pnpm dev # http://localhost:3011
```
## 构建和自托管
```bash
pnpm build
pnpm start # 在 :3011 上提供服务(独立输出)
```
它是一个标准的 Next.js 应用程序 — 在任何地方托管它(VPS、树莓派、Cloudflare、任何反向代理后面)。 它需要 **没有环境变量、没有数据库、没有秘密** 来运行。
## 嵌入
`<Generator/>` 组件是自包含且可配置的:
```tsx
import { Generator } from "@/components/generator/generator";
// 完整页面(默认 OpenQR 标志标题):
<Generator />
// 嵌入式小部件,您自己的品牌,没有默认标题:
<Generator embedded header={<MyLogo />} />
// 注入您自己的下载后调用操作:
<Generator renderSuccess={(variant) => <MySupportCluster variant={variant} />} />
```
该工具附带 **零分析**。 如果您想要匿名 UI 事件(例如使用哪个导出格式 — 而不是二维码内容),请注入一个处理程序:
```ts
import { setTrackHandler } from "@/lib/analytics";
setTrackHandler((action, name, category) => myAnalytics.track(category, action, name));
```
## 隐私
二维码生成 100% 在您的浏览器中进行。 唯一的非必需出站调用位于 **位置** 工具中:CARTO 的地图瓦片和通过 OpenStreetMap 的 Nominatim 进行的地址查找。 除此之外,没有其他内容会离开设备。
## 技术栈
Next.js 16(应用路由器)· React 19 · TypeScript(严格)· Tailwind v4 · [`qr-code-styling`](https://github.com/kozakdenys/qr-code-styling) · Leaflet · pnpm。
## 贡献
参见 [CONTRIBUTING.md](CONTRIBUTING.md)。 保持简单、可访问、客户端和免费 — 任何功能都不应需要付费来删除水印或解锁格式。
## 许可证
[AGPL-3.0](LICENSE) 2026 Sam Moreton 版。
您可以在 AGPL-3.0 下免费使用、研究、修改、自托管和重新分发 OpenQR。 如果您在网络服务上运行修改后的版本,则 AGPL 要求您在相同的许可证下提供源代码。 如果这不适合您的使用场景,**商业许可证** 可供选择 — 参见 [NOTICE](NOTICE)。