某一天突发奇想,想要做一个简单的待办清单工具,用来管理日常任务。除了基本的增删改查,它最酷的功能是接入了 AI 总结,能自动帮你回顾最近完成了什么工作,生成日报或周报,特别适合想提升效率的朋友。
其实没用什么特别复杂的架构,主打一个简单实用:
- 后端:Go 语言,框架用的是 Gin。
- 前端:原生 HTML/CSS/JS 三件套。没上 React/Vue 那些重型框架,保持轻量。
- 数据存储:目前直接存的 JSON 文件(在
data/目录下),简单粗暴,备份也方便。 - AI 能力:接入了火山引擎的豆包 (Doubao) 模型。当你点击“总结”时,它会分析你完成的任务,给你写一段漂亮的总结。
-
准备环境:确保你电脑上装了 Go (建议 1.20+)。
-
配置 Key:
- 在根目录建一个
.env.yaml文件(或者参考项目里的示例)。 - 填入你的火山引擎 API Key:
ARK_API_KEY: 你的key_here。
- 在根目录建一个
-
运行:
go run .默认是 HTTP,监听在
:8080。可以通过--port参数来指定监听的端口。如果你想直接启用 HTTPS,可以在启动时加上参数(示例):
go run . --https \ --tls-cert /path/to/your/certificate.pem \ --tls-key /path/to/your/private.key你需要根据你的实际证书文件路径来修改上面的命令:
--tls-cert: 对应你的证书文件(通常是.pem或.crt结尾,包含完整的证书链)。例如你的xubowen.online_bundle.pem。--tls-key: 对应你的私钥文件(通常是.key结尾)。例如你的xubowen.online.key。
HTTPS 自动重定向(同端口): 当启用 HTTPS 时,程序会在同一个端口上同时处理 HTTPS 和 HTTP 请求。
- 如果用户访问
https://your-domain:8080,正常使用 HTTPS 加密连接。 - 如果用户访问
http://your-domain:8080(明文 HTTP),程序会自动将其重定向到 HTTPS 地址。 - 这意味你只需要配置一个端口映射即可同时支持两种协议的访问体验。
-
使用:
- 打开浏览器访问
http://localhost:8080(HTTP 模式)。 - 如果按上面的方式启用了 HTTPS,则访问
https://localhost:8080或你实际绑定的域名。 - 随便注册个账号就能用了。
- 打开浏览器访问
main.go: 程序入口。handlers.go&summary_handler.go: 处理具体的业务逻辑,比如 API 接口。static/: 放前端网页的地方。data/: 你的数据都存在这儿。
目前还是个 Demo 级别的项目,数据量大了可能得换个数据库,但个人用完全够了。欢迎试用,有 bug 可以在 issue 里提给我!