通过 wedding.json 单文件配置姓名、日期、地点和媒体路径,无需修改 JSX 或 HTML
wed — HTML 启动器模板
作者 rezaprama
一个基于 Cloudflare Workers 的婚礼邀请函网站模板,通过编辑 wedding.json 和上传照片即可定制,支持双语、多城市路径和可选留言簿。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
内置两个示例城市和两类受众路径,支持为不同宾客群体生成个性化链接
提供 /send/ 页面创建带宾客姓名的链接,宾客姓名保留在浏览器中
可选本地背景音乐、礼物信息和基于 Cloudflare D1 的审核留言簿
包含响应式布局、键盘友好对话框、减少动态效果、两种字体、三种文字大小和三种纯色 UI 配色
提供真实 404 页面、规范 URL、robots 设置和站点地图
模板详细介绍
wed 是一个免费、开源的婚礼邀请函网站模板,代码采用 MIT 许可证,字体使用 SIL Open Font License。它通过 GitHub 和 Cloudflare Workers 部署,默认站点无需数据库、API 密钥或终端操作,适合不熟悉开发的用户。模板提供响应式邀请函页面,包含封面、新人介绍、活动详情、地图、相册和日历链接。所有内容通过一个可读的 wedding.json 文件配置,无需编辑 JSX 或 HTML。模板内置两个示例城市和两类受众路径(小写路径对应新人宾客,大写路径对应父母宾客),并提供 /send/ 页面生成个性化链接。可选功能包括本地背景音乐、礼物信息和基于 Cloudflare D1 的审核留言簿(带受保护的 /admin/ 页面)。README 强调示例中的姓名、日期、场地和占位图需替换后再发送邀请,且私有仓库不会隐藏已发布网站,allowIndexing: false 仅请求搜索引擎不收录,并非密码保护。
适合你的项目吗?
适用场景
- 希望快速搭建免费婚礼邀请函网站的新人,无需购买域名或订阅服务
- 需要为不同城市或不同宾客群体(新人宾客与父母宾客)提供独立邀请链接的婚礼
- 希望通过 WhatsApp 等渠道向每位宾客发送个性化邀请链接的场景
- 需要可选留言簿功能并希望审核留言的婚礼
- 希望使用 AI 提示词辅助修改内容或添加功能的用户
适合人群
- 不熟悉 GitHub 或 Cloudflare、愿意按照分步指南操作的新人
- 需要双语(英语和印尼语)邀请函的用户
- 希望将邀请函托管在 Cloudflare Workers 免费计划上的用户
- 需要响应式设计、相册、地图和日历链接等基础功能的婚礼邀请场景
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
点击 Deploy to Cloudflare 按钮或使用模板生成副本,首次部署时保持 Worker 名称为 wed,构建命令为 npm run build,部署命令为 npm run deploy,Node.js 版本为 24
- 2
在 GitHub 副本中编辑 wedding.json,替换姓名、日期和地点,将 demo 设为 false,language 设为 "en" 或 "id",并保持引号和逗号格式
- 3
将照片上传到 public/media 目录,并在 wedding.json 中将对应的 .svg 路径改为新文件名
- 4
上传私人照片或礼物信息前,先将自己的副本设为私有;但已发布网站仍对任何拥有链接的人可见,allowIndexing: false 并非密码保护
- 5
可选留言簿需在 Cloudflare D1 上启用,并访问受保护的 /admin/ 页面进行审核
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- 需保持原模板公开;上传私人照片或礼物信息前应将自己的副本设为私有。私有仓库只隐藏源文件,已发布网站仍对任何有链接的人可见;allowIndexing: false 只是请求搜索引擎不收录,并非密码保护。
- Cloudflare Workers 与 D1 免费额度为账户限额而非无限托管:Workers 每日 10 万请求,D1 每日 500 万行读取、10 万行写入、5 GB 存储;大型活动前需查看当前定价与 GitHub 计划限额。自定义域名或音乐授权可能另需付费。
- 代码与占位图采用 MIT 许可证,字体采用其自带的 SIL Open Font License;商业使用与定制需遵守这些许可证。
- 示例中的姓名、家庭、日期、场地均为示例,占位图并非真实新人照片,发送邀请前必须替换。
- 留言簿为可选功能,需在 Cloudflare D1 上启用,并通过受保护的 /admin/ 页面审核。
- 背景音乐为可选本地文件,需自行提供;README 提示音乐授权可能产生费用。
- 开发者本地运行需 Node.js 24 或更新版本。
- 首次部署需保持 Cloudflare Worker 名称为 wed,使用 Free 计划,构建命令 npm run build,部署命令 npm run deploy,并选择 Node.js 24。
- 部署需登录自己的 Cloudflare 和 GitHub 账户,并在账户中创建仓库副本。
- 分享链接需从 Cloudflare 仪表板复制实际工作 URL,个性化链接通过 /send/ 页面生成。
- 路径大小写有意义;首页使用第一个场合,城市导航保留宾客姓名与受众,启用留言簿后每类受众有独立留言流。
- PageSpeed 满分仅针对示例演示在特定日期的测量;用户自己的照片和新增功能可能改变结果。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
**Keep the original template public. Make your own copy private before uploading private photos or gift details.** A private repository hides source files, but the published website is still visible to anyone with its link. `allowIndexing: false` asks search engines not to list it; it is not a password.
README 原文
Cloudflare offers a Free plan for Workers and optional D1. The current Workers allowance includes 100,000 Worker requests per day. D1 includes 5 million rows read and 100,000 rows written per day, with 5 GB total storage. These are account limits, not unlimited hosting. This template runs the Worker for site requests, so plan capacity using that allowance. Check current [Workers pricing](https://developers.cloudflare.com/workers/platform/pricing/), [D1 pricing](https://developers.cloudflare.com/d1/platform/pricing/) and [GitHub plan limits](https://docs.github.com/en/billing/concepts/product-billing/github-actions) before a large event. A custom domain or music license may have its own cost.
README 原文
The code and placeholder artwork use the **MIT license**. The fonts use their own included **SIL Open Font License**. Commercial use and customization are welcome; follow those licenses.
README 原文
The demo names, families, dates and venues are examples. The artwork is a placeholder, not a photo of a real couple. Replace these before sending your invitation.
README 原文
- Optional moderated wishes on Cloudflare D1, with a protected `/admin/` page. [Enable it later](docs/guestbook.md).
README 原文
- Optional local background music that starts when the invitation opens. One button pauses/resumes it. No YouTube player or third-party scripts on first load.
README 原文
Use Node.js 24 or newer.
README 原文
2. **Deploy the sample.** Your repository can have any short name, such as `our-wedding`. Keep the Cloudflare **Worker name** as `wed` for the first deploy. Use the Free plan. Build command: `npm run build`. Deploy command: `npm run deploy`. Choose Node.js 24 (`NODE_VERSION=24` if needed). Deploy once to see your sample website. [Want another Worker name?](docs/setup.md#2-deploy-the-sample)
README 原文
1. **Make a copy.** Click **Deploy to Cloudflare** above. Sign in to your own Cloudflare and GitHub accounts. The setup makes a repository in your account. Alternatively, [Use this template](https://github.com/rezaprama/wed/generate), then connect that copy through Cloudflare → Workers & Pages → Create application → Import a repository.
README 原文
5. **Share your website.** Cloudflare rebuilds after each saved change. Copy the working URL from its dashboard. Open `/send/` to make a link for each guest. Example: `https://your-site.workers.dev/one/?to=Your%20Guest`.
README 原文
The home page uses the first occasion. City navigation preserves the guest name and audience. Each audience has its own wish feed when the guestbook is enabled. Letter case matters.
README 原文
https://github.com/rezaprama/wed/blob/main/LICENSEhttps://github.com/rezaprama/wed/blob/main/README.mdThe sample demo scored **100 in all four PageSpeed categories on mobile and desktop** on 20 October 2026. [Reports and measurement context](docs/performance.md). Your photos and added features can change the results.
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-20。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 83 / 100
- 技术栈
- HTML
- 网站类型
- 启动器
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-10-20
- 截图检查日期
- 2026-10-21
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 HTML。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: codex-user-requested-batch-review-20261021 · 2026-10-21
查看当时使用的来源资料
SHA-256: fc71e85cd1fde5ed7e297d55e1950f0dee678220bdfcd600893be2267a5d2635
2026-10-20T13:26:33.345Z
来源文件 / 仓库<div align="center"> # wed **Your day. Your website.** Make your own wedding invitation website. Free template, simple English and Indonesian guides, GitHub and Cloudflare Free. [Live demo](https://wed.rezaprama.workers.dev) · [Bahasa Indonesia](README.id.md) · [Photo guide](docs/photos.md) · [Setup help](docs/setup.md) [](https://deploy.workers.cloudflare.com/?url=https://github.com/rezaprama/wed) [](https://github.com/rezaprama/wed/actions/workflows/check.yml) [](LICENSE) </div> Change the names. Add your photos. Send the link. **Never used GitHub or Cloudflare? [Start here, from creating your accounts](docs/setup.md).** Every required button and term is explained. Prefer to ask an AI? [Copy a prompt for ChatGPT, Gemini or Claude](docs/ai.md). You can paste its answer into GitHub. [Change colors, text sizes and extra sections](docs/customize.md) in the same file. [Add a feature](docs/features.md) with shared AI rules and automated checks. **No WordPress. No paid theme. No subscription to this template.** The default site needs no database, API key or terminal. Hosting can stay at $0 within Cloudflare's Free limits. You receive a free `workers.dev` address; buying your own domain is optional.  <details><summary>See the mobile preview</summary> <img src="docs/preview-mobile.png" width="390" alt="wed sample invitation on a mobile screen"> </details> The sample demo scored **100 in all four PageSpeed categories on mobile and desktop** on 20 October 2026. [Reports and measurement context](docs/performance.md). Your photos and added features can change the results. ## Make it yours, one small step at a time 1. **Make a copy.** Click **Deploy to Cloudflare** above. Sign in to your own Cloudflare and GitHub accounts. The setup makes a repository in your account. Alternatively, [Use this template](https://github.com/rezaprama/wed/generate), then connect that copy through Cloudflare → Workers & Pages → Create application → Import a repository. 2. **Deploy the sample.** Your repository can have any short name, such as `our-wedding`. Keep the Cloudflare **Worker name** as `wed` for the first deploy. Use the Free plan. Build command: `npm run build`. Deploy command: `npm run deploy`. Choose Node.js 24 (`NODE_VERSION=24` if needed). Deploy once to see your sample website. [Want another Worker name?](docs/setup.md#2-deploy-the-sample) 3. **Change the words.** In your GitHub copy, open **`wedding.json`**, click the pencil, and replace the names, dates and places. Keep the quotation marks and commas. Set `demo` to `false`. Set `language` to `"en"` or `"id"`. Click **Commit changes**. This saves your changes. 4. **Add your photos.** Open **`public/media`** → **Add file** → **Upload files**. Upload `couple.jpg`, `person-one.jpg`, `person-two.jpg` and your gallery photos. In `wedding.json`, change each matching `.svg` path to your new filename. For example, `"/media/couple.jpg"`. [See the exact photo map](docs/photos.md). 5. **Share your website.** Cloudflare rebuilds after each saved change. Copy the working URL from its dashboard. Open `/send/` to make a link for each guest. Example: `https://your-site.workers.dev/one/?to=Your%20Guest`. That is enough for an invitation. Music, gifts and a guestbook are optional. The [full guide](docs/setup.md) covers the same steps with common fixes. **Keep the original template public. Make your own copy private before uploading private photos or gift details.** A private repository hides source files, but the published website is still visible to anyone with its link. `allowIndexing: false` asks search engines not to list it; it is not a password. ## What you get - A responsive invitation, a cover, two people, event details, maps, a gallery and calendar links. - One readable settings file, **`wedding.json`**. No JSX or HTML edits needed for normal personalization. - Two sample cities and two audiences. Lowercase paths invite the couple's guests. Uppercase paths invite the parents' guests. Rename the city slugs or remove an event in the settings file. - A `/send/` page to create personalized links. Guest names stay in your browser; sending a WhatsApp message is your choice. - Optional local background music that starts when the invitation opens. One button pauses/resumes it. No YouTube player or third-party scripts on first load. - Optional gift details and profile links. Empty settings produce no empty cards. - Optional moderated wishes on Cloudflare D1, with a protected `/admin/` page. [Enable it later](docs/guestbook.md). - Original SVG placeholder artwork, local licensed fonts, automatic responsive WebP photos and no browser framework. - Keyboard-friendly dialogs, reduced motion, two fonts, three text sizes and three solid UI colors. - A real 404 page, canonical URLs that follow your deployed hostname, robots settings and a sitemap. The demo names, families, dates and venues are examples. The artwork is a placeholder, not a photo of a real couple. Replace these before sending your invitation. ## Four sample links | Occasion | Couple's guests | Parents' guests | | --- | --- | --- | | First city | `/one/` | `/ONE/` | | Second city | `/two/` | `/TWO/` | The home page uses the first occasion. City navigation preserves the guest name and audience. Each audience has its own wish feed when the guestbook is enabled. Letter case matters. ## What is free? The code and placeholder artwork use the **MIT license**. The fonts use their own included **SIL Open Font License**. Commercial use and customization are welcome; follow those licenses. Cloudflare offers a Free plan for Workers and optional D1. The current Workers allowance includes 100,000 Worker requests per day. D1 includes 5 million rows read and 100,000 rows written per day, with 5 GB total storage. These are account limits, not unlimited hosting. This template runs the Worker for site requests, so plan capacity using that allowance. Check current [Workers pricing](https://developers.cloudflare.com/workers/platform/pricing/), [D1 pricing](https://developers.cloudflare.com/d1/platform/pricing/) and [GitHub plan limits](https://docs.github.com/en/billing/concepts/product-billing/github-actions) before a large event. A custom domain or music license may have its own cost. ## For developers Use Node.js 24 or newer. ```sh npm ci npm run dev ``` Open `http://127.0.0.1:8788`. Local preview creates ignored local secrets and a local SQLite file. It never uses a production database. `npm run dev:cloudflare` uses the official Wrangler simulator instead. ```sh npm run typegen npm run check npm run deploy:dry-run npx wrangler login npm run deploy npm run smoke -- https://your-site.workers.dev ``` The default deployment needs no secret. For automatic updates, use Cloudflare's GitHub integration; the included GitHub Actions workflow validates pushes and pull requests without needing a deployment token. [Architecture and performance](docs/performance.md) explains the design and measurements. ```text wedding.json Your names, dates, places and media paths public/media/ Your photos and optional music src/ Template, browser code, styles and Worker scripts/ Build, validation, preview and optional setup migrations/ Optional guestbook schema tests/ Config, routing, privacy and database checks docs/ Small, focused guides ``` ## Make changes with AI Use the [content prompt](prompts/personalize.en.txt) for names, dates, photos, three colors, three sizes and extra content sections. Use the [feature prompt](prompts/feature.en.txt) for code changes. Shared `AGENTS.md`, `CLAUDE.md` and `GEMINI.md` rules plus `npm run verify` keep the workflow clear. These checks cover defined constraints; they do not guarantee every AI answer is correct. ## Help make the next wedding easier Found a problem? [Open an issue](https://github.com/rezaprama/wed/issues/new/choose). Want to improve the template? Read [CONTRIBUTING.md](CONTRIBUTING.md). Small fixes, clear docs and new language support are welcome. If wed helps you, a star helps another couple find it. Share only screenshots you have permission to publish.
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

startbootstrap-simple-sidebar
An off canvas sidebar navigation Bootstrap HTML template created by Start Bootstrap
HTML · 启动器

adminkit
AdminKit is a free & open-source HTML dashboard & admin template based on Bootstrap 5
HTML · 后台

Landing-Page
Tailwind CSS Starter Template - Landing Page
HTML · 企业官网

light-bootstrap-dashboard
Light Bootstrap Dashboard is an admin dashboard template designed to be beautiful and simple.
HTML · 后台

sing-app
💥Free and open-source admin dashboard template built with Bootstrap 4.5 💥
HTML · 后台

startbootstrap-modern-business
A multipurpose Bootstrap full website template created by Start Bootstrap
HTML · 启动器
