# gift-book **Repository Path**: gitsharp/gift-book ## Basic Information - **Project Name**: gift-book - **Description**: 一款开源免费,完全离线、的现代化电子礼簿系统。专为红白喜事设计,提供高效录入、Excel/PDF 专业报表导出一站式礼金管理解决方案。 - **Primary Language**: Unknown - **License**: CC-BY-SA-4.0 - **Default Branch**: main - **Homepage**: https://jingguanzhang.github.io/gift-book/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-01-23 - **Last Updated**: 2026-03-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 电子礼簿系统 一款**纯本地、零后端、完全本地运行的单页 Web 应用,** 旨在为各类红白喜事提供一个现代化、安全、高效的礼金(份子钱)管理解决方案。它彻底告别了传统的手写礼簿,通过数字化的方式解决了记录、统计、查询和存档的全部流程,以**简单易用**为最高设计原则。 [在线演示](https://jingguanzhang.github.io/gift-book/) ![unnamed](https://github.com/user-attachments/assets/1ebb4003-3dd5-442e-bc65-066ea17958eb) > **严正声明** > > 本项目开源仅供**个人学习、研究或自用**。 > **严禁任何形式的商业转售**(包括但不限于直接出售源码、打包倒卖、二次封装收费等)。 > 如果需要二开倒卖请使用这个版本 https://github.com/jingguanzhang/gift-book-lite (含微信小程序)。 > 请尊重开源精神,违者必究。 --- ## 核心特性 ### 数据主权,绝对安全 * **拔线能用**:纯 HTML 单页应用,无服务器交互,数据100%本地存储,不依赖任何云服务。 * **金融级加密**:全量数据采用 **AES-256** 加密落库(IndexedDB),管理密码 **SHA-256** 哈希保护。即便电脑丢失,文件被拷走也无法破解。 ### 极致的录入体验 * **秒级记账**:姓名、金额、渠道(微信/支付宝/现金)全键盘操作,回车即录。 * **智能风控**:实时检测重名、重复金额,防止“记重了、记错了”。 * **自动大写**:输入数字,自动生成规范中文大写(如:壹仟元整)。 * **语音播报**:支持 TTS 语音朗读(“张三 贺礼 一千元整”),方便宾客现场核对金额,又能撑场面。 ### 双屏互动 & 仪式感 * **访客副屏**:支持开启副屏页面,实时投射数据到外接屏幕/电视,主屏录入,副屏展示,方便现场宾客核对金额。 * **隐私脱敏**:副屏自动开启隐私模式,仅展示最新记录全名,历史记录自动打码。 * **收款码展示**:副屏支持自定义上传展示东家收款码,方便宾客现场扫码。 * **双色主题**:内置「喜庆红」与「肃穆灰」两套 皮肤,适应红白喜事不同场景。 ### 专业级报表与归档 * **真·PDF 引擎**:内置 PDF 渲染器(非简陋的浏览器打印),支持**自定义字体、封面图、背景纹理**,生成精美的电子礼簿。 * **智能分批**:数据量超 1000 条自动分卷生成,防止浏览器内存溢出。 * **审计留痕**:全链路记录修改历史(时间轴),支持**软删除(作废)**,每一笔变动都有迹可循。 * **双重备份**: * **Excel**:标准 `.xlsx` 报表,含完整修改日志。 * **数据文件**:导出加密的数据备份,支持跨设备全量恢复。 --- ## 📸 界面预览 QQ截图20251130181935 QQ截图20251130181740 QQ截图20251130181723 ## 🚀 快速上手 --- 本系统由纯静态文件组成,**无需安装任何环境**。 1. **下载**:从本项目Releases页面下载的windows预编译应用(exe) https://github.com/jingguanzhang/gift-book/releases/download/1.1/gift-book.exe 2. **运行**:直接双击程序。 3. **初始化**: * 设置事项名称及**管理密码**(请务必牢记,丢失无法找回)。 4. **记账**:录入数据 5. **归档**:活动结束后,务必导出 **Excel** 或 **.pdf文件** 到电脑。微信收藏或云盘永久保存。 --- ## 👨‍💻 开发者指南 **本项目原生基于** **Vanilla JS + HTML** **开发,结构简单,开箱即用。** ### 1. 获取代码 (Git) **首先将仓库克隆到本地:** ``` # 克隆项目 git clone https://github.com/jingguanzhang/gift-book.git # 进入目录 cd gift-book ``` ### 2. 环境准备 你只需要一个代码编辑器(推荐 **VS Code**)和一个现代浏览器(Chrome/Edge)。 ### 3. 启动开发 虽然直接双击 `index.html` 可以运行,但为了避免浏览器的安全策略限制(如本地文件访问限制、模块加载跨域等),**强烈建议使用本地静态服务器**运行。 * **方式一(推荐):VS Code Live Server** 1. 安装 VS Code 插件:[Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer)。 2. 右键选择 **"Open with Live Server"**。 3. * **方式二:Python (Mac/Linux/Win)** 在项目根目录下打开终端,运行: ```bash # Python 3 python -m http.server # 访问 http://localhost:8000 ``` ### 4. 项目结构 * `index.html`: **v1.1 专业版**主入口(核心代码均内嵌于此)。 * `static/`: 静态资源目录。 * `tailwindcss.js`: 样式引擎。 * `xlsx.full.min.js`: Excel 导出库。 * `pdf-lib.min.js`: PDF 生成引擎。 * `crypto-js.min.js`: 加密库。 * `fontkit` & `.ttf`: 字体文件(用于 PDF 生成)。 * `guest-screen.html`: 副屏显示页面。 ### 5. 部署上线 本项目是纯静态资源,部署非常简单: * **直接上传**:将所有文件上传至 GitHub Pages、Vercel、Nginx 或任何静态文件服务器。 * **无需编译**:不需要执行 `build` 命令,源码即产物。 --- ## 🧩 技术栈 * **Core**: Vanilla JS (ES6+), OOP 架构 * **Style**: Tailwind CSS * **Database**: IndexedDB (idb wrapper) * **Crypto**: CryptoJS (AES-256) * **Export**: * `SheetJS` (Excel) * `PDF-Lib` & `Fontkit` (客户端 PDF 生成) * **UI Components**: Grid.js (表格), RemixIcon (图标) --- ## ⚖️ 免责声明 本应用为便携式电子礼簿工具,仅用于现场临时记账,应用不可作为长期数据存储载体。 本应用按“原样”提供,不含任何形式的明示或默示担保。 **开发者不对因使用本应用造成的任何数据丢失(如忘记密码、清理电脑、浏览器缓存、重装系统或遗忘管理密码等)承担责任。** 数据无价,活动结束后,请立即使用 **导出Excel/Pdf** 功能将数据保存到安全的地方。