Frappe HR 16.52.0 介绍与选型指南

Frappe HR(frappe/hrms)开源 HRMS 全景介绍与选型指南:13 大模块功能与架构拆解、与 OrangeHRM/IceHrm/Jorani/MintHCM 的量化对比与选型建议,全部数据实查于 2026-10-23。

Frappe HRERP自托管2026/10/23

Frappe HR 16.52.0 介绍与选型指南

目标:全面认知 Frappe HR(frappe/hrms)这款开源人力资源管理系统(HRMS)——它是什么、架构如何、能做什么、与 OrangeHRM/IceHrm/Jorani/MintHCM 等同类开源 HRMS 相比处于什么位置,帮助技术选型者在 10 分钟内完成「是否采用」的第一轮判断。本文全部数据实查于 2026-10-23(GitHub Releases/仓库、shields.io 徽章、官方文档站 docs.frappe.io/hr、竞品官网与仓库),标注来源与查询日期,本地安装实测路径见《Ubuntu 22.04 安装 Frappe HR 16.52.0 指南》与《Frappe HR 16.52.0 Docker Compose 部署指南》。

一、环境信息

本文为认知与选型篇,仅基于公开信息溯源,未做本地部署实测;涉及的环境与版本口径如下:

  • 产品:Frappe HR(仓库 frappe/hrms,原名 HRMS,由 ERPNext 的 HR 模块独立而来)
  • 文中版本:Frappe HR v16.52.0(2026-10-22 发布,版本 16 最新稳定标签,GitHub Releases 实查)
  • 长期维护分支:version-15(v15.64.6,2026-10-21 发布)与 version-16 双分支并行维护(GitHub Releases 实查)
  • 依赖框架:Frappe Framework v16.53.0(2026-10 实查 releases.atom),HRMS v16.52.0 的 pyproject.toml 声明 frappe = ">=16.50.0,<17.0.0"、erpnext = ">=16.50.0,<17.0.0"
  • 运行基座(frappe v16 CI 与 pyproject 实查):Python ≥3.14、MariaDB 11.8(CI 基准镜像)、Redis、Node.js 20
  • 信息查询日期:2026-10-23

二、软件概述

Frappe HR 是 Frappe Technologies 官方维护的开源 HR 与薪资软件(Open Source, modern, and easy-to-use HR and Payroll Software),提供从员工管理、入职、考勤、休假到薪资、个税的完整 HRMS 能力,官方宣称包含 13 个以上模块。其 README「Motivation」章节明确记录了产品由来:Frappe 团队自用需要开源 HR 软件,发现市面上没有「真正的」开源 HRMS,最初作为 ERPNext 内的模块集开发,自 v14 起 HR 模块成熟后拆分为独立产品 Frappe HR(README 实查,2026-10-23)。

关键身份信息(2026-10-23 实查):

项目值来源
仓库frappe/hrmsGitHub
许可证GPL-3.0shields.io license 徽章
星数8.9kshields.io stars 徽章
最新稳定版v16.52.0(2026-10-22)GitHub Releases
v15 分支最新v15.64.6(2026-10-21)GitHub Releases
发布节奏周级补丁(10 月内连续发布 16.50/16.51/16.52 三代)releases.atom
维护方Frappe Technologies(ERPNext 同门,erpnext 40k 星)GitHub
文档站docs.frappe.io/hr官方
移动端官方 PWA/移动应用(请假、打卡、员工档案)官方 README/文档

💡 说明:Frappe HR 与 ERPNext 是「同一框架上的两个官方 App」关系——Frappe HR v16 的 hooks.py 中 required_apps = ["frappe/erpnext"](version-16 分支实查),pyproject 也声明依赖 erpnext ≥16.50;即装 Frappe HR 的站点会连带安装 ERPNext。这与「HRMS 独立即不装 ERP」的旧印象不同,选型时必须把 ERPNext 的存储与迁移开销计入评估。

三、核心架构

Frappe HR 不是独立单体应用,而是「Frappe 框架 + 一组 App」的插件式架构(官方 README「Under the Hood」章节,2026-10-23 实查):

  1. Frappe Framework(底座):Python 编写的全栈低代码 Web 框架,提供 ORM/文档引擎、认证、权限、REST API、调度(RQ 队列)等公共能力。
  2. App 层:frappe(框架)→ erpnext(业务必需依赖)→ hrms(HR 业务)。HRMS 的 DocType(如 Employee、Leave Application、Salary Slip)挂在框架的文档引擎上,通过 bench CLI 安装到站点。
  3. 前端:Frappe UI(Vue 3 组件库)驱动的 Desk 单页应用;Frappe HR 的 SPA 页面(如员工自助、审批)基于它构建。
  4. 数据层:MariaDB(生产推荐,v16 CI 基准 11.8)为主库,Redis 承担缓存(cache)、后台队列(queue)、SocketIO 三类通道。
  5. 接入层:内建 REST API(/api/...),所有 DocType 自动暴露增删改查接口;Web/移动端通过 API 与服务端交互。
  6. 进程形态:bench 管理下的多进程——web(gunicorn/dev server)、schedule(调度器)、workers(后台任务)、socketio;开发态用 bench start 一键拉起 Procfile。

💡 技术拓展:Frappe 体系里「App」与常见「模块」不同。一个 App 是可独立版本化、可发布到 PyPI/git 的完整插件包(含 DocType 定义、迁移脚本、前端 SPA);站点(site)是框架内的逻辑租户,一个 bench 可挂多个站点、一个站点可装多个 App。同类「插件式业务架构」对比:Odoo(Python,模块同仓库)、Tryton(Python,模块分仓库)、ERPNext(Python,Frappe App)——Frappe HR 选择了「独立仓库 + 框架依赖声明」的折中,升级与回滚粒度比 Odoo 模块更清晰,但必须与框架大版本对齐(如 hrms v16 只配 frappe v16)。

四、功能特性

以下模块清单来自官方文档站 docs.frappe.io/hr 左侧导航(2026-10-23 整页实查),按域归纳:

功能域核心对象/能力
组织管理Employee、雇佣类型、分支机构、部门、职级/职等、员工组、员工健康保险、组织架构图
考勤员工考勤、考勤工具(批量上传)、考勤申请、签到签退(Employee Checkin,支持地理定位)、自动考勤、生物识别设备集成
排班班次类型/地点/申请/分配、排班计划、班次日历(Roster)
休假假期列表与分配、假别、休假周期/政策/政策分配、休假控制面板、休假申请、补偿假、离职结算假、休假封顶/预支、带薪假额度累结(Earned Leaves)、休假台账
绩效考核模板、考核周期、KRA、目标(Goal)、员工绩效反馈、考核总览报表
差旅报销员工预支、报销单(多级审批工作流)、多币种预支与报销、出差申请
招聘编制计划(Staffing Plan)、岗位需求/空缺、招聘门户(Job Portal)、候选人(Job Applicant)、面试管理(面试类型/轮次/反馈)、录用通知(Job Offer)、入职通知书模板、员工内推
培训培训计划/活动/结果/反馈
员工生命周期入职引导(Onboarding)、晋升、调岗、离职(Separation)、技能地图、离职面谈、Full & Final 结算
薪资与个税薪资周期、个税档位(Income Tax Slab)、薪资组件/薪资结构、工资条(Salary Slip)、批量发薪(Payroll Entry)、额外薪资、留存奖金、员工激励、个税减免申报、员工福利申请/申领、退休金(Gratuity)及其规则、员工贷款、加班费、弹性福利、薪资更正与补差(Arrears)
车辆管理车辆、车辆行驶日志
平台设置HR Settings、Payroll Settings、日报摘要(Daily Work Summary)、员工小组
报表人力报表、项目盈利报表、员工 CTC 结构、个税计算/扣除、预支汇总、招聘分析、员工分析、工时利用率等

特性层面的三个突出点(基于上表归纳):一是薪资域完整度高——从个税档位、薪资结构、批量发薪到离职金/贷款/补差,覆盖了多数开源 HRMS 不做或放入付费版的 Payroll 能力;二是招聘域自带门户与面试管理,接近轻量 ATS;三是移动自助以官方 PWA/移动应用形态提供(请假、打卡、档案)。

五、快速开始(最小可用示例)

本节给出官方 README 记载的最小体验路径(2026-10-23 实查自 frappe/hrms README「Local」一节),用于在已有 bench 环境的机器上快速拉起一个本地站点;bench 的完整依赖链安装与逐条实测回显见《Ubuntu 22.04 安装 Frappe HR 16.52.0 指南》。

bench new-site hrms.local            # 创建站点(本地开发站点,跟随提示输入管理员密码与数据库 root 密码)
bench get-app erpnext                # 拉取 ERPNext(HRMS v16 的必需依赖)
bench get-app hrms                   # 拉取 Frappe HR
bench --site hrms.local install-app hrms   # 将 HRMS 安装进站点
bench --site hrms.local add-to-hosts # 将 hrms.local 写入本机 hosts

按官方 README 的预期:执行完成后访问 http://hrms.local:8080 进入登录页,使用 Administrator 账号登录即可进入 HR Desk。官方 README 同时提供一条更快的容器化开发路径(git clone https://github.com/frappe/hrms 后进入其 docker/ 目录执行 compose 启动,默认账号 Administrator/admin,README 实查)与托管试用路径(Frappe Cloud),生产级容器化部署的完整形态、持久化与恢复闭环见《Frappe HR 16.52.0 Docker Compose 部署指南》。

⚠️ 注意:上面 5 条命令中 bench get-app 未锁版本,官方 README 面向开发场景;生产安装务必按《Ubuntu 22.04 安装 Frappe HR 16.52.0 指南》锁定 hrms v16.52.0 / erpnext v16.52.1 / frappe v16.53.0 的兼容矩阵,避免框架与 App 大版本错配。

六、适用场景与限制

适用场景:

  1. 需要「考勤 + 休假 + 薪资 + 招聘」一体化的中小组织:Frappe HR 的薪资域(个税、发薪、离职金、贷款)在开源 HRMS 中罕见地完整,适合不想再单独采购薪酬软件的团队。
  2. 已在使用 ERPNext/Frappe 生态的组织:HR 与财务(报销入账)天然同库同框架,员工自助、审批流复用同一套权限与工作流引擎。
  3. 需要二开或与自有系统深度集成:框架自带 REST API 与 DocType 元数据引擎,HR 数据对象全部可通过 API 读写,适合作为人力主数据源。
  4. 多公司/多分支机构核算:Employee/Branch/Department/Grade 体系与 ERPNext 的公司维度对齐,支持集团内多法人。

限制与成本(选型时必须正视):

  1. 依赖链重:Python 3.14(frappe v16 要求,pyproject 实查)+ MariaDB 11.8 + Redis + Node 20 + yarn + bench CLI,且 HRMS v16 连带安装 ERPNext——最低可用栈远重于 OrangeHRM/Jorani 这类「PHP + MySQL 两件套」。
  2. 框架版本耦合:hrms 与 frappe/erpnext 大版本必须对齐(v16 配 v16),升级需三件套同步,窗口期管理成本高于单体应用。
  3. 管理面广:Web 服务、调度器、队列 worker、SocketIO 多进程形态,日常运维(备份、监控、升级)需要按 Frappe 运维模型进行。
  4. 中文本地化:界面翻译由 Frappe 社区(Crowdin)维护,模块覆盖程度不一,落地中文环境需自行校对薪资/考勤等业务术语。
  5. 移动端为 PWA/轻应用形态:不如商业 HRMS 的原生 App 完整,适合审批与打卡等轻操作。

七、同类选型对比

对比对象为当前仍活跃维护的主流开源 HRMS(数据实查日 2026-10-23,星数经 shields.io 徽章取证,版本取自 GitHub Releases.atom,许可取自仓库 LICENSE 徽章或 README 原文):

维度Frappe HROrangeHRM StarterIceHrmJoraniMintHCM
GitHub 星数8.9k1.2k734411438
最新版本v16.52.0(2026-10-22)5.9(2026-06-28)v36.0.1(2026)无正式 release(提交活跃至 2026-03)4.3.4(2026-10-08)
许可证GPL-3.0GPL-3.0仓库未提供可识别 LICENSE(shields.io 显示无法识别,商用前需自查)MITAGPL-3.0
技术栈Python 3.14 + Frappe 框架 + MariaDB + Redis + Node 20PHP Symfony + MySQLPHP + MySQLPHP 8.1+ + MySQL 8+(README 实查)PHP(SugarCRM 衍生)
部署依赖重:bench + 数据库 + 缓存 + 队列 + 前端构建轻:PHP + MySQL,有官方镜像轻:PHP + MySQL轻:PHP + MySQL中:PHP + MySQL
薪资/个税内置完整(Slab/发薪/Gratuity/贷款/补差)开源版不含(企业版提供)无原生薪资无(专注休假/加班/考勤)官方特性列表未见薪资模块
招聘(ATS)有(岗位/门户/面试/内推)有(Starter 含招聘域)无无有
绩效有(KRA/目标/反馈)有有无有
定位全功能 HRMS(含 Payroll)国际化商业开源双版本中小团队 HR 管理休假管理系统HCM+CRM 一体化(SugarCRM 衍生)

量化维度补充(社区活跃度与版本节奏):Frappe HR 的 release 节奏为周级(2026-10-15 至 2026-10-22 间连续发布 v16.51.0、v15.64.5/6、v16.52.0,releases.atom 实查),且 v15/v16 双分支同日维护补丁;OrangeHRM 最新版 5.9 距今约 4 个月;Jorani 自 2026-03 后未见正式版本;MintHCM 4.3.4 于 2026-10-08 发布,节奏月级。另注:老牌 PHP HRMS Sentrifugo 的 GitHub 仓库(Sentrifugo/sentrifugo)星数已不足 10(shields.io 实查),社区活跃度有限,本表未列入主对比。

如何选型(按「如果…则…」给出):

  • 如果组织需要开源栈里最完整的薪资/个税能力,或已在用 ERPNext → Frappe HR 几乎是唯一解,代价是接受重依赖栈与三件套版本对齐。
  • 如果只需要员工档案 + 休假 + 考勤的轻量系统,且希望一台 LAMP 服务器当天上线 → Jorani(MIT 许可宽松)或 IceHrm(注意其许可证标识缺失需自查)。
  • 如果重视国际化与商业支持兜底、可接受薪资模块闭源 → OrangeHRM Starter(SourceForge 下载量长期居前,商业版成熟)。
  • 如果想要 HR 与 CRM/客户数据打通的混合定位 → MintHCM(AGPL-3.0,注意其传染性条款)。
  • 如果团队是 PHP 技术栈、无 Python 运维经验 → Frappe HR 的 Python/Node 双栈会抬高运维门槛,优先 PHP 系产品;反之,Python 技术栈团队维护 Frappe HR 顺理成章。

八、参考链接