核心用法
Invoice Generator 是一款将结构化 JSON 数据转换为专业 PDF 发票的命令行工具。用户可通过管道输入 JSON、指定完整文件路径或调用预存配置模板三种方式生成发票。输出自动保存至指定目录,支持智能版本递增避免覆盖。
显著优点
- 标准化流程:严格的 JSON Schema 校验确保数据完整性,避免手工制单的格式错误
- 模板复用:支持将常用客户配置保存至
configs/目录,实现一键复用 - 专业输出:基于 WeasyPrint 生成打印级 PDF,适合直接发送客户或存档
- 自动化友好:纯命令行设计,易于集成 CI/CD 或财务自动化脚本
潜在局限
- 学习门槛:需理解 JSON 结构及环境变量配置,非技术用户上手困难
- 样式固定:模板定制化能力有限,难以满足高度品牌化需求
- 依赖链长:需 Node.js + WeasyPrint + jq 等二进制依赖,跨平台部署复杂
- 无内置校验:JSON 字段错误仅返回退出码,缺乏交互式修正提示
适合人群
- 开发者、自由职业者及小型技术团队
- 已有自动化财务流程的企业
- 需要批量生成发票的 SaaS 或电商平台
常规风险
- 路径遍历风险:若
INVOICE_DIR配置不当,可能暴露敏感目录 - 数据注入:未对输入字段做 HTML/脚本转义,恶意描述字段可能影响 PDF 渲染
- 版本冲突:自动递增命名可能导致发票编号与实际业务系统不一致
- 依赖安全:WeasyPrint 等外部工具需单独维护更新