开源、无用户注册/登录的基金实时估值工具,单机本地使用。
包含 Uniapp 前端(App / 小程序 / 浏览器)和 Python FastAPI 后端。
- 本仓库中不包含任何真实敏感信息。数据库密码、大模型 API Key、域名等均以占位符或空值出现在文档与示例中。
- 请勿将
.env文件提交到 Git。.env用于填写你本地的数据库密码、API Key 等,已在.gitignore中排除。 - 部署或二次开发时,请自行在本地/服务器创建
.env并填写你的配置;前端发布时请将 API 基础地址改为你自己的后端地址。
| 配置项 | 说明 | 示例占位符 |
|---|---|---|
MYSQL_PASSWORD |
本机 MySQL 密码 | 在 backend/.env 中填写,勿提交 |
MYSQL_DB |
数据库名 | 默认 fund,可与其它项目库区分 |
LLM_API_KEY |
大模型 API Key(支付宝截图解析) | 在 .env 中填写,不填则该功能不可用 |
前端 BASE |
后端 API 基础地址 | 本地开发可用 http://127.0.0.1:8002;上线改为你的域名或 IP |
所有敏感项均通过 环境变量 或 前端 config 配置,详见下文「本地部署与开发」。
- Python 3.10+
- MySQL 5.7+
- Node.js(如需本地跑前端;也可用 HBuilderX)
git clone <本仓库地址>
cd fund/backend
pip install -r requirements.txt- 确保 MySQL 已安装并启动。
- 在项目根目录下执行(会创建
fund库及holdings表):
cd backend
python init_db.py也可手动执行 database/schema.sql。
cd backend
cp .env.example .env
# 编辑 .env,填写你的 MYSQL_PASSWORD 等,勿提交 .env 到 Git.env.example 中已列出所有项;必填一般为 MYSQL_PASSWORD,其它可选。
cd backend
uvicorn main:app --reload --host 0.0.0.0 --port 8002或 Windows 下双击 backend/run.bat。
默认访问:http://127.0.0.1:8002,API 文档:http://127.0.0.1:8002/docs。
- 使用 HBuilderX 打开
uniapp-fund-src目录(或按 uni-app 官方方式运行)。 - 接口地址:编辑
uniapp-fund-src/api/config.js,将BASE设为你的后端地址(勿提交真实生产地址):- 本机调试:
http://127.0.0.1:8002 - 真机/局域网:
http://<你的电脑局域网IP>:8002 - 上线:改为你的后端域名或 IP,建议 HTTPS。
- 本机调试:
- 打开应用,直接进入首页(无登录)。
- 录入持仓:基金代码、成本价、份额等。
- 首页查看实时估值、持有收益、当日收益。
- 点击某基金进入详情。
fund/
├── uniapp-fund-src/ # 前端 Uniapp Vue3
│ ├── pages/ # 首页、录入、详情
│ └── api/ # 接口封装,config.js 为后端地址
├── backend/ # 后端 FastAPI
│ ├── routers/fund.py # 基金、持仓接口
│ ├── config.py # 配置(从环境变量读取)
│ ├── main.py
│ ├── .env.example # 配置示例,复制为 .env 后填写
│ └── run.bat # Windows 一键启动 8002
└── database/
└── schema.sql # fund 库 + holdings 表
- APP 打包与部署:见 APP打包与部署指南.md(打包为 APK/IPA 及部署后端)。
- 数据库查看与排查:见
backend/README_DATABASE.md。
- 估值仅供参考,以基金公司公布净值为准;本项目不构成任何投资建议。
- 不要将
.env、真实密码、API Key、域名等提交到仓库;提交前请确认.gitignore已包含.env。 - 公网部署时建议使用 Nginx 反向代理与 HTTPS,并做好访问控制与备份。
- 大模型截图解析为可选功能,依赖
LLM_API_KEY;不配置则仅无法使用该功能,其它功能正常。
- 提交前检查:确认未提交
backend/.env及任何包含真实密码、API Key、域名的文件;可执行git status与git diff检查。 - 首次推送:若仓库中曾提交过
.env,务必从历史中移除(如使用git filter-branch或 BFG),并轮换已泄露的密码与 Key。 - 分支与协作:建议主分支保护,通过 PR 合并;协作者同样不要提交
.env。 - License:本项目采用 MIT 许可证,详见 LICENSE。