icehrm

Manage your employees easily with a robust and efficient Human Resource Management System

Stars
523
Forks
353
Open issues
168
Closed issues
144
Last release
about 1 year ago
Last commit
about 1 year ago
Watchers
523
Total releases
28
Total commits
483
Open PRs
44
Closed PRs
10
Repo URL
Platform
License
other
Category
Usecase
Offers premium version?
NO
Proprietary?
NO
About

IceHrm

IceHrm is an HRM software which enable companies to manage employee details and HR workflows.

    

Installation Using Docker

cd icehrm
npm run setup
npm run docker:build
npm run docker:start

Installation (without docker)

Upgrade from Previous Versions

Refer: https://icehrm.com/explore/docs/upgrade-icehrmpro/

Setup Development Environment

git clone https://github.com/gamonoid/icehrm.git
cd icehrm
docker-compose up -d

Extend IceHrm with custom Extensions

  • Inorder to create an admin extension run

php ice create:extension sample admin

Building frontend assets

  • When ever you have done a change to JavaScript or CSS files in icehrm/web you need to rebuild the frontend
  • First make sure you have all the dependencies (just doing this once is enough)

cd icehrm/web
npm install
cd ..
npm install

  • Build assets during development

gulp clean
gulp

  • Build assets for production

gulp clean
gulp --eprod

  • Build extensions

gulp ejs --xextension_name/admin
Debugging code with psysh

You can run psysh inside the icehrm web docker container to manually debug the code.

  • Start Psysh console

docker compose up -d
docker exec -it icehrm-icehrm-1 /bin/sh
./psysh -c ./.config/psysh/config.php

This will open a psysh console. You can instantiate any IceHrm class and debug it. Here is an example of creating an employee object and loading an employee from the database.

$emp = new \Employees\Common\Model\Employee();
$emp->Load('id = ?',[1]);
var_dump($emp);
Running tests (Docker)

  • Run e2e (cypress) tests

docker-compose -f docker-compose-testing.yaml up --exit-code-from cypress

or

docker-compose -f docker-compose-testing.yaml up --exit-code-from cypress --build --force-recreate

  • When you are ready to push your changes to production, make sure to build the production images

docker-compose -f docker-compose-prod.yaml up -d --build
Useful Links

Alternative Projects
No projects found

Subscribe to Open Source Businees Newsletter

Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.

We'll never share your email with anyone else.