HortusFox 介绍与选型指南
HortusFox 自托管植物管理系统的认知与选型篇:项目溯源(v6.4,2026-10-28 取证)、功能全景、PHP 8.3 + MariaDB 技术栈、适用场景与同类项目对比。
HortusFox 介绍与选型指南
撰写日期:2026-10-28 | 本文为认知篇,全部事实来自公开网络来源联网溯源,不含本地实测结论;标注「实测」的内容一律出现在本专栏其余篇章中。
HortusFox 是一款免费、开源(MIT 许可)的自托管协作式植物管理系统,由德国开发者 Daniel Brendel 自 2023 年起持续维护,官网为 www.hortusfox.com。它把"你家阳台、花园、客厅里的每一盆植物"当作一等公民来管理:植物档案与照片、按位置(location)组织、浇水/施肥任务、库存(药剂与耗材)、日历提醒、群聊协作、主题外观,以及面向二次开发的 REST API。如果你的需求是"给自己家(或团队办公区)的植物建立一个可长期积累的数字化台账",它基本是目前自托管世界里最完整的答案。
一、项目溯源与版本现状
以下信息均于 2026-10-28 联网核实:
| 项目 | 事实 | 来源 |
|---|---|---|
| 代码仓库 | danielbrendel/hortusfox-web | GitHub 仓库页 |
| 许可证 | MIT | 仓库 README 徽章与 LICENSE.txt |
| 最新稳定版 | v6.4(发布于 2026-10-22) | Releases Atom 订阅源 |
| 发布节奏 | 2026 年内连续发布 v6.0 → v6.4,平均数周一版,维护活跃 | Releases Atom 订阅源 |
| GitHub 星数 | 约 1.7k(徽章显示值) | shields.io 星数徽章,2026-10-28 取证 |
| 官方文档 | www.hortusfox.com/documentation,仓库 doc/documentation.pdf | README Resources 章节 |
几点解读:
- 命名即定位。"Hortus" 是拉丁语"花园"之意,加上狐狸(Fox)吉祥物,项目从名字到交互都围绕园艺场景设计,而不是把通用清单软件换个皮。
- 版本号已到 6.x,说明这不是一个起跑线上的玩具项目;从 Release 记录看,2026 年 9 月至 10 月间从 v6.0 迭代到 v6.4,功能与修复更新密集。
- 单作者 + 社区模式。作者同时是其所用的 Asatru PHP 框架的作者,代码与文档一体性强,但也意味着升级节奏、议题响应以作者个人投入为上限,选型时应把"订阅 Releases"纳入运维习惯。
二、功能全景
以下功能清单来自官方 README(查询日期 2026-10-28):
- 🪴 植物管理:植物档案、自定义属性、照片库、生长日志、笔记;
- 🏠 位置(Location)体系:植物必须归属某个位置(如"阳台""客厅""温室"),整个系统的组织主线;
- 📜 任务系统:浇水、施肥等养护任务,支持逾期提醒、明日到期提醒、周期性(recurring)任务;
- 📖 库存系统:基料/药剂/耗材的分组库存管理;
- 📆 日历系统:日历条目与提醒,支持日历分类;
- 🔍 全局搜索与 🕰️ 历史记录;
- 🌦️ 天气预报:接入 OpenWeatherMap,可在界面查看本地天气辅助养护决策;
- 💬 群聊:工作区成员实时聊天,协作场景的核心;
- 🦋 主题系统:官方主题商店可在线安装主题,界面高度可定制;
- 🔑 管理后台:工作区设置、环境参数、用户与位置管理;
- 💾 备份:支持工作区数据的导出/导入归档;
- 💻 REST API:内置 API 供第三方程序集成;
- 📱 二维码:为植物生成二维码标签,扫码直达详情;
- 🔬 植物识别:接入 Pl@ntNet API 拍照识别植物种类。
外部服务依赖(README "External services" 章节,2026-10-28 查证):
| 功能 | 外部服务 | 是否必需 |
|---|---|---|
| 界面图标 | FontAwesome Free | 内置,无需配置 |
| 天气预报 | OpenWeatherMap API key | 可选 |
| 植物识别 | Pl@ntNet API key | 可选 |
| 植物资料查询 | GBIF | 无需额外 key |
即:离线可用是底线,天气/识别属于"配了更香"的增强项。
三、技术栈与系统要求
官方 README "System requirements" 与 "Tech stack" 章节载明(2026-10-28 查证):
- 运行环境:PHP ^8.3、MariaDB ^11.4、SMTP 邮件服务(密码重置、通知邮件依赖);
- 框架:自研轻量级 Asatru PHP 框架(asatru-php.com);
- 关键依赖:Composer(PHP 依赖)、npm + webpack(前端资源构建)、phpmailer(邮件)、carbon(日期处理)、tcpdf(PDF 导出)、htmlpurifier(HTML 过滤)、parsedown(Markdown 渲染)、php-qrcode(二维码)。
这是一套非常"经典 LAMP"的组合:PHP-FPM + nginx(或任意 Web 服务器)+ MariaDB,无 Node 常驻进程、无消息队列、无搜索引擎依赖,单机即可承载全部功能。对运维的意味是:
- 资源占用小,最低规格的虚拟机即可运行;
- 排障路径全部落在 PHP 与 MariaDB 两个熟悉域内;
- 升级即"换代码 + 跑迁移命令",没有独立的构建服务需要照看。
四、选型分析
4.1 它适合你吗
适合:
- 家里有成规模的花草多肉,想要一个长期积累的养护台账(照片流、日志、任务历史都是资产);
- 家庭成员/小团队多人协作养护,需要群聊、提醒与任务分派;
- 已有自托管基础设施(nginx、MariaDB、SMTP),愿意多养一个 PHP 应用的 homelab 玩家;
- 需要数据完全自主(对比市面上的 Gardenize、Blossm 等 SaaS 园艺应用)。
不适合/需权衡:
- 只有一两盆植物——记账收益低于成本,用手机备忘录更省心;
- 期望商业级多租户/SaaS 化运营——它是单工作区(workspace)设计;
- 环境里没有 PHP 8.3/MariaDB 11.4 且不便升级——版本要求较新;
- 邮件通知是硬需求但无 SMTP——密码重置与提醒邮件都走 SMTP,需自备邮件通道。
4.2 与邻近类别自托管项目的对比
园艺专用管理在自托管领域是小众赛道,HortusFox 几乎没有直接同类;用户实际会在"植物管理"与"通用家庭清单/ERP"之间做选择。下表基于各项目官方仓库 README 的公开定位信息整理(查询日期 2026-10-28,许可与技术栈为各仓库长期稳定事实):
| 项目 | 定位 | 技术栈 | 许可 | 与 HortusFox 的关系 |
|---|---|---|---|---|
| HortusFox | 植物养护专用:位置→植物→任务/照片/日志全链路 | PHP 8.3 + MariaDB | MIT | 本文主角 |
| Grocy | 家庭物资 ERP:库存、 chores(家务)、电池、食谱等 | PHP + SQLite | MIT | 任务/库存模块有交集,但无植物档案、照片库、识别、天气等园艺特性 |
| Homebox | 家庭物品清单与标签检索 | Go + SQLite | AGPL-3.0 | 物品"静态台账"思路,缺少养护任务、日志与协作聊天 |
结论很直接:要"养"植物(有生命周期、有养护动作、有协作),HortusFox 是唯一成熟的自托管专用解;若只是记录"家里有什么东西",通用清单类反而更轻。
4.3 与本章结论配套的阅读路径
- 动手之前先看部署与初始化全流程:《HortusFox 安装部署指南》;
- 装完想改行为、调语言、接 SMTP/天气/识别,读 《HortusFox 6.4 配置参数详解》;
- 日常运维、备份恢复、版本升级靠 《HortusFox 6.4 常用 CLI 命令与工具详解》。
五、风险与注意事项(选型阶段就要知道)
- 测试体系在建:官方 README 明确标注"应用测试目前仍在建设中(under construction)",意味着升级前更依赖备份兜底;
- 外部 API 为增强项:OpenWeatherMap/Pl@ntNet 需要自行注册 key,GBIF 免 key 但依赖其可用性;
- SMTP 是半必需品:新用户邀请邮件、密码重置、逾期提醒邮件都依赖 SMTP 配置,选型时先把邮件通道方案想清楚;
- 前端构建产物已随仓库发布:普通部署无需自行执行 npm/webpack 构建,仅在二次开发界面时才涉及;
- 数据模型有框架约定:表名即模型名(如
UserModel、PlantsModel),二次开发时直接读源码即可,但升级迁移会改表结构,不要绕过应用直改数据库。
六、小结
HortusFox 用一组朴素但完整的能力(位置 → 植物 → 任务/照片/日志 + 任务/库存/日历/群聊/主题/API),填补了自托管世界里"植物养护管理"这一细分空白。MIT 许可、PHP + MariaDB 的经典栈、单机低资源需求,使它成为 homelab 里"养得起、看得懂、改得动"的那类应用。若你的绿植数量已多到记不住浇水日,或者想把家庭园艺变成一份可回溯的档案,它值得一个部署位。
本文事实性陈述的来源:HortusFox 官方仓库 README 与 Releases Atom 订阅源(github.com/danielbrendel/hortusfox-web)、官方网站 www.hortusfox.com、shields.io 星数徽章,全部于 2026-10-28 联网查证。