/myE-Leave

A leave management web application.

Primary LanguageJavaScriptMIT LicenseMIT

myE-Leave

Web application for managing E-Leaves based on TimeOff.Management.

Features

Multiple views of staff absences

Calendar view, Team view, or Just plain list.

Tune application to fit into your company policy

Add custom absence types: Sickness, Maternity, Working from home, Birthday etc. Define if each uses vacation allowance.

Optionally limit the amount of days employees can take for each Leave type. E.g. no more than 10 Sick days per year.

Setup public holidays as well as company specific days off.

Group employees by departments: bring your organisational structure, set the supervisor for every department.

Customisable working schedule for company and individuals.

Third Party Calendar Integration

Broadcast employee whereabouts into external calendar providers: MS Outlook, Google Calendar, and iCal.

Create calendar feeds for individuals, departments or entire company.

Three Steps Workflow

Employee requests time off or revokes existing one.

Supervisor gets email notification and decides about upcoming employee absence.

Absence is accounted. Peers are informed via team view or calendar feeds.

Access control

There are following types of users: employees, supervisors, and administrators.

Optional LDAP authentication: configure application to use your LDAP server for user authentication.

Seamless data migration between different installations

User friendly and simple workflow for data migration between different myE-Leave installations.

Admin user can download the entire company data as a single JSON file and then restore the account at a different installation by simply uploading the JSON.

Works on mobile phones

The most used customer paths are mobile friendly:

  • employee is able to request new leave from mobile device

  • supervisor is able to record decision from the mobile as well.

Lots of other little things that would make life easier

Manually adjust employee allowances e.g. employee has extra day in lieu.

Upon creation employee receives pro-rated vacation allowance, depending on start date.

Email notification to all involved parties.

Optionally allow employees to see the time off information of entire company regardless of department structure.

Screenshots

TimeOff.Management Screenshot

Installation

Self hosting

Install myE-Leave web application within your infrastructure:

(make sure you have Node.js (>=6.0.0) and SQLite installed)

git clone https://github.com/wulfboy-95/myE-Leave.git myE-Leave
cd myE-Leave
npm install
npm start

Open http://localhost:3000/ in your browser.

Run tests

We have quite a wide test coverage, to make sure that the main user paths work as expected.

Please run them frequently while developing the project.

(make sure you have PhantomJS installed in path)

npm test

(make sure that application with default settings is up and running)

Any bug fixes or enhancements should have good test coverage to get them into "master" branch. Todo: add test coverage for new features.

Updating existing instance with new code

In case one needs to patch existing instance of myE-Leave application with new version:

git fetch
git pull origin master
npm install
npm run-script db-update
npm start

Feedback

todo

Special Thanks

This project is a derivative of TimeOff.Management