Skip to content

This mono-repository contains the system setup for a demo app to administer employee performance reviews

Notifications You must be signed in to change notification settings

garyforsterio/employee-feedback-app

Repository files navigation

Employee Feedback App

This mono-repository contains the system setup for the evaluation and management of employees.

Architecture

Here is an overview of the architecture System architecture


Structure

This repository uses Lerna to manage projects. They are:

Backend

The backend for the system. See documentation here

Client

The web app client. See documentation here


Deployment

The system utilises docker-compose to allow for easy deployment across environments. To get started please follow these steps:

  1. Install Docker Compose (setup here)
  2. Navigate to the root folder of this repository
  3. Run docker-compose up -d (prefixing sudo may be required)
  4. Wait for docker to pull the neccasary images, build the projects and start everything up
  5. Navigate to http://localhost/
  6. On the login page input the following dummy admin credential:

Tested using Docker Compose v1.24.1 and Docker v19.03.8. If you have any difficulties with setup please open an issue in this repository


Assumptions

The following assumptions were made when creating this project

  • The number of users is small

    This assumption invalidates the necessity of a load-balancer in the system architecture in addition to adding scalablity through kubernetes, sharding etc.

  • Users and employees have a 1:1 relationship

    If this product was to be used as a multi-tenancy application, users and employees would need to be decoupled to allow for one user to be evaluated in several companies.

  • Administrators are also employees, and as such can be reviewed.

    Through the tool both administrators and normal users can be evaluated.

  • Users can evaluate their own performace

    A vital part of development is one's ability to self-evaluate.

  • Employee feedback cannot be edited or deleted

    To promote honesty and maintain integrety in the process.


Frameworks

The following frameworks are used:

  • React
  • Gatsby
  • i18next
  • Typescript
  • Node.js
  • Koa.js
  • MongoDB
  • Docker
  • Lerna
  • Nginx

Screenshots

Admin Console

  • Responsive
  • Utilizing routing

User overview

Request feedback

Feedback page

Feedback page

About

This mono-repository contains the system setup for a demo app to administer employee performance reviews

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •