explaingit

lenve/vhr

28,091JavaAudience · developerComplexity · 4/5StaleSetup · hard

TLDR

A web-based HR management system for tracking employees, departments, salaries, and payroll. Built with Spring Boot backend and Vue frontend, designed as a learning reference for full-stack enterprise applications.

Mindmap

mindmap
  root((vhr))
    What it does
      Employee records
      Payroll management
      Department tracking
      Role-based access
    Tech stack
      Spring Boot
      Vue.js
      MySQL
      Redis
    Key features
      Excel export
      Real-time chat
      Auto emails
      Permission control
    Use cases
      HR departments
      Learning projects
      Enterprise apps

Things people build with this

USE CASE 1

Build an HR system to manage employee records, departments, and payroll for a company.

USE CASE 2

Learn how to structure a full-stack web application with separated front-end and back-end.

USE CASE 3

Set up role-based access control so different employees see different features based on their job.

USE CASE 4

Export employee data to Excel and send automated welcome emails to new hires.

Tech stack

JavaSpring BootSpring SecurityMyBatisMySQLRedisRabbitMQVue.js

Getting it running

Difficulty · hard Time to first run · 1day+

Requires MySQL, Redis, and RabbitMQ services running; Spring Boot + Vue build pipeline; database schema initialization.

License could not be detected automatically. Check the repository's LICENSE file before use.

In plain English

vhr, also called Micro HR ("微人事"), is a human resources management system written by a Chinese open-source author. The README and description are mostly in Chinese; the project itself is a worked example of a real-world business application with a separated front end and back end, and it is also used as a teaching scaffold. The author notes that the project has since been rebuilt with SpringBoot 3 plus Vue 3 in a separate repo called vhr2.0, and that anyone wanting a more complete business product can look at a sister project called TienChin. In plain terms, the software is the kind of internal tool a company would use to manage employees: there is a login page, different users see different menus based on their role, an administrator assigns roles to users and decides which resources each role is allowed to operate on, and there are screens for department management, job title and position management, employee records, salary account setup, employee chat, Excel import and export of employee data, and a welcome email sent automatically when a new user is added. The README lists the technology stack directly. The back end uses Spring Boot, Spring Security, MyBatis, MySQL, Redis, RabbitMQ, Spring Cache, and WebSocket. The front end uses Vue, ElementUI, axios, vue-router, Vuex, WebSocket, and vue-cli4. Database setup is handled by Flyway so the schema is created automatically rather than by importing scripts by hand. You would use this project if you are learning how to build a Spring Boot plus Vue application end to end and want a moderately sized, working reference that covers permissions, messaging, caching, and email along with a typical HR feature set. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
How do I set up the Spring Boot backend and Vue frontend for this HR system locally?
Prompt 2
Show me how to implement role-based access control in this vhr project so managers see different menus than employees.
Prompt 3
How does this project use RabbitMQ to send welcome emails asynchronously when new employees are added?
Prompt 4
Walk me through the database schema for employees, departments, and payroll in this HR system.
Prompt 5
How can I add a new feature to export employee data to Excel in this vhr application?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.