/icehrm

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

Primary LanguageJavaScriptOtherNOASSERTION

IceHrm

Build Status

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