Icehrm

icehrm

Product Information

Favorites

Programming Language

Public chat

Support Plans

There are currently no OSS plans available

If you are a provider or contributor to the repository, you can start adding your OSS plan.

Add an OSS plan
Learn more here

Contact us if you are looking for a plan for this open source.

We will help you get in touch with professional providers.

Product Details

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

IceHrm

Build Status

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

  • Checkout IceHrm without installing: IceHrm Demo
  • Get a Managed IceHrm hosting: IceHrm Cloud
  • Self-hosted IceHrm with all the features in IceHrm Cloud: IceHrmPro

    

Installation

Using Docker

Installation (without docker)

Upgrade from Previous Versions

  • Download the latest release.
  • Extract the release file.
  • Replace the icehrm/core directory in your current installation.
  • Replace the icehrm/web directory in your current installation.
  • Copy or replace icehrm/updater in your current installation.
  • From icehrm/app directory in release, copy and replace following files in your installtion icehrm/app directory:
    • fileupload-new.php
    • fileupload_page.php
    • google-connect.php
    • updater.php

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

Stay in touch

  • Get Practical Tips For Business and Developers.
  • Learn about PieceX Community Needs for Source Code Projects.
  • Be the First to Know PieceX Newest Free Community Code Projects.
PieceX Logo