This is a fullstack project of the employee review system in this project you can review other employes with admin permission
View Demo
·
Report Bug
·
Request Feature
This project involves the development of an Employee Rating System with a plethora of features aimed at providing a comprehensive and customizable experience. The system facilitates the evaluation of employees based on various criteria, including private comments, comment visibility, and multi-company presence.
- Private Comments: Admins can control the comments to show comments without name.
- Comment Visibility Control: Admins can set rules for displaying or hiding comments.
- Multi-Company Presence: An employee can be associated with multiple companies.
- Custom Photos: Users can upload custom profile photos.
- Banner (Background) Customization: Users can set personalized banners.
- Request to Join Organization: Admin can send email requests to join an organization to the users.
- Organization ID Integration: Users can join an organization by providing an organization ID.
- Admin Approval Process: Admins receive requests and can approve or reject them via email.
- Rating Permissions: Admins control user permissions to rate other employees.
- Admin Promotions and Removals: Admins can promote or remove employees.
- Rating Limits: Admins can set the maximum number of ratings a user can give.
- Employee Management: Admins can edit or delete ratings and manage employee roles.
- Organization Control: Admins can control organization-specific settings.
-
Joining an Organization:
- Users can request to join an organization by providing an organization ID.
- Admins receive requests and can approve or reject them.
-
Rating Process:
- Users can rate other employees based on predefined criteria.
- Private comments can be added, and visibility is controlled by admin settings.
-
Admin Controls:
- Admins can manage employee roles, including promotions and removals.
- Edit or delete ratings as needed.
-
Customization:
- Users can customize their profiles with custom photos and banners.
This project is designed to provide flexibility to users and admins through a user-friendly interface and customizable settings. It ensures a seamless and controlled employee rating experience within the organization.
To get a local copy up and running follow these simple steps.
This is an example of how to list things you need to use the software and how to install them.
-
Node js download specific version
-
npm
npm install npm@latest -g
- Mongo db download (optional if you have Mongo db Atlas URL)
-
Clone the Repository
git clone https://github.com/sreecharan7/empreview.git
-
Install NPM Packages
cd empreview npm install
-
Configure Environment Variables Change the environment variables according to your requirements. The most important ones are
mongodb url
,email
,emailpass
, andbase url
. -
Run the Project
node index
-
Configure Docker Environment Variables After cloning, change the environment variables, especially
mongodburl
. Optional foremail
,emailpass
, andbase url
. -
Create Docker Volume
docker volume create empreview_data
-
Build the Docker Image
cd empreview docker build -t empreview .
-
Create and Run Docker Container
docker run -it -d -p 4000:4000 -e PORT=4000 -v empreview_data:/app/public empreview
Note: Make sure to change the port used in the environment variable if needed.
Visit http://localhost:4000 in your web browser to access the website.