项目介绍
ExcuseMe 是一个帮助用户在社交场合中快速生成借口的工具。 当你不方便直接拒绝某件事时,只需要输入想拒绝的内容,系统就会自动生成多种不同风格的借口供你选择。
功能特性
- 6 种借口风格:合情合理、委婉温和、幽默搞笑、直接干脆、离谱夸张、反客为主
- 8 个预设场景:聚餐、加班、借钱、帮忙、约会、送礼、活动、推销
- 支持补充身份关系、亲密度、沟通方式等上下文
- 可基于点赞/点踩反馈换一批
- 支持收藏和历史记录
- 支持生成分享图片
- 免登录使用,基于 sessionId 隔离数据
技术栈
| 层级 | 技术 | |------|------| | 前端 | Vue 3 + TypeScript + Vite + Vant | | 后端 | Node.js + Express + TypeScript | | 数据库 | MongoDB + Mongoose | | AI | 兼容 OpenAI 接口的大语言模型 | | 部署 | Docker + Nginx |
核心功能
借口生成
用户输入要拒绝的事情后,后端会根据场景、语气和补充信息构造提示词,再调用大模型生成 6 种风格的借口。
换一批与反馈
用户可以对结果点赞或点踩,再用这些反馈重新生成更贴合语境的版本。
收藏与历史
常用的借口可以收藏,历史记录也会保存下来,方便后续复用。
分享图片
前端支持把结果生成分享卡片,便于截图传播或原生分享。
项目结构
client/:前端 Vue 应用,负责交互、展示和分享卡片生成server/:后端 Express 应用,负责生成接口、历史、收藏和反馈逻辑docs/:项目文档docker-compose.yml:整体部署编排
项目总结
这个项目的重点不在复杂功能,而在于把一个很明确的用户需求做得足够顺手: 输入简单、返回直接、风格可选、结果可复用。