Skip to content

sushant21/ReviewSystem

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Review System

A tool for peer review in an organization. Can give editable ratings, reviews to other people anonymously.

Can see analysis of previous reviews and ratings for each individual.

Installation

First clone the repository using git clone . Then run by any of the methods.

  1. Using Anaconda :
$ conda create -n ReviewSystem python=3
$ source activate ReviewSystem
$ pip install -r requirements.txt
  1. Using Virtualenv : Open the ReviewSystem-master folder then type:
$ virtualenv -p python=3 ReviewSystem
$ . ReviewSystem/bin/activate
$ pip install -r requirements.txt

After pip installs the requirements, a folder 'migrations' is created in the app 'ratings' and an empty file 'init.py' is added.

Running the app for the first time

Open the review_project folder and execute the following commands

$ touch ratings/migrations/__init__.py
$ python manage.py makemigrations
$ python manage.py migrate
$ python manage.py runserver

Features

  1. Registration and Login for each user.
  2. Users can view one another using the 'Leaderboard' tab
  3. Leaderboard also works as a gateway to access all other profiles.
  4. User can rate and review for all users except himself.
  5. Rating is given from 1 to 10.
  6. Opening one's own profile shows the username, name current rating and reviews.
  7. One can view his/her own rating only after rating every other person.
  8. One can publicise his/her contribution by adding "works" on own's profile.

To-Do

  • Group data into lesser forms. Currently work form can only add the data and not delete it.

  • Adding histograms to see the cumulative ratings of users across sessions

  • Toggle between Log-out and Register buttons once the user has logged in. If the user hasn't logged in, don't display the Log-Out button.

  • Changing the current rating system to that of a system defined value of integers that the user can choose from.

  • Encrypting senstive data so that even the superuser can't view it.

  • Having a trustworthy review system if a user is unhappy with a particular rating.

  • Send a prompt if login fails.

  • Adding a considerable amount of "works" makes the individual fields non-readable. Need to have dynamic blocks which change dimensions according to the text.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 66.9%
  • HTML 30.4%
  • CSS 2.5%
  • Other 0.2%