这个项目能做什么
OpenMTG 是一个用于管理 Magic: The Gathering 卡牌收藏的自托管 Web 应用程序。它针对希望将卡牌库存、套牌和价格数据保留在自己服务器上的个人和小型团体,而不是使用托管服务。
收藏管理允许用户通过模糊的 Scryfall 搜索按名称添加卡牌,并记录数量、品相、是否闪卡、语言、价格和印刷版本。价格会根据可配置的间隔和速率限制(默认是 72 小时刷新,每秒 2 次请求)自动从 Scryfall 刷新。收藏和套牌可以多种格式导入和导出,并且可以粘贴来自 Moxfield、MTGO 或 Arena 的套牌列表,以一步创建已填充的套牌,并显示每张卡的进度指示器。
套牌构建器支持主牌库、备牌库和指挥官区域,并提供套牌分析视图,包括套牌 CMC、法力曲线和颜色分布。统计页面按稀有度、颜色、类型、品相、版本和估计价值对收藏进行细分。愿望清单跟踪当前价格、90 天价格历史,并在卡牌价格低于目标价格时发出警报。
其他功能包括管理员管理的多个用户账户,每个账户拥有独立的收藏;同一实例内的用户之间的卡牌交易,在卡牌转移前需要双方确认;贷款跟踪,包括接收人姓名和日期;正面和背面卡牌照片上传;收藏夹;快速添加流程;支持 USD 和 EUR,以及管理员定义的货币,并自动刷新汇率;一个公共展示页面,仅显示显式选择的卡牌和套牌,并且可以按实例禁用。可选的 Home Assistant 集成通过每个用户的 webhook 推送交易和愿望清单警报,并通过带有 bearer 认证的拉取端点公开实时收藏统计数据;该功能由管理员控制,默认关闭。
技术栈是 Python 3.14,后端使用 FastAPI、SQLAlchemy 和 Alembic,前端使用 React、Vite 和 TanStack Query。存储使用 PostgreSQL 16 或 SQLite,具体取决于使用的 Compose 文件,并在首次设置时固定。Nginx 作为反向代理,部署通过 Docker 和 Docker Compose,默认监听 8080 端口。配置通过 .env 文件和管理员设置面板处理,数据库迁移在启动时自动运行。遥测是可选的匿名数据,可以通过 NOTEL 环境变量禁用。该项目采用 AGPL-3.0 许可证;首次启动时会创建一个管理员账户,之后只有管理员可以创建其他用户。
评论
0 评分人数达到10人后显示
登录后参与讨论。