Jump to content

Repo comfac-hrms Overview

From Game in the Brain Wiki

Repo:comfac-hrms/Overview — Project Overview

What This Project Does

comfac-hrms is a Frappe HR (HRMS) installation for ComFac Corporation. It provides a complete Human Resource Management System with modules for employee lifecycle management, leave and attendance tracking, expense claims, performance management, and payroll processing. This is a fork/clone of the official Frappe HR app customized for ComFac's specific HR and payroll requirements.

Project Type

Frappe App — A Python/JavaScript application built on the Frappe Framework that extends ERPNext with comprehensive HR and Payroll functionality.

Where This Fits in the Stack

  • Depends on: frappe (core framework), erpnext (accounting/ERP base)
  • Used by: ComFac HR department for employee management
  • Integrates with: ERPNext accounting for expense claims, payroll entries, and journal entries
  • Related repos: comfac-webshop (separate Frappe app for e-commerce)

Key Technologies

Component Technology
Backend Language Python 3.x
Frontend Framework Vue.js (Frappe UI)
Database MariaDB (via Frappe ORM)
Config Format JSON (DocType definitions), Python (hooks, controllers)
UI Components Frappe UI library, custom Vue components
Mobile App Frappe HR PWA (Progressive Web App)
Deployment Frappe Bench (Docker or local)

Quick Orientation

If you have 5 minutes to understand this repo, read these files in this order:

  1. hrms/hooks.py — The central registry of the app. Shows all DocType overrides, event hooks, scheduled tasks, and integrations. This is the "table of contents" for the entire application.
  2. hrms/modules.txt — Lists the modules (HR, Payroll) and their structure.
  3. hrms/hr/doctype/employee_checkin/employee_checkin.json — Example DocType definition showing how data models are structured in Frappe.
  4. hrms/overrides/employee_master.py — Example of how this app overrides core ERPNext behavior (Employee doctype).

Module Structure

The app is organized into two main modules:

  • HR Module (hrms/hr/): Employee lifecycle, attendance, leave, expense claims, recruitment, performance
  • Payroll Module (hrms/payroll/): Salary structures, payroll processing, tax calculation, benefits

External Documentation