Assessment360 aims to revolutionize assignment management by making it simple, efficient, and meaningful for all stakeholders. Our solution is designed to help educational institutions gain a competitive edge.
Deployed live at : Assessment360
-
Clone the repository:
git clone https://github.com/Abhishek-Mallick/Assessment360.git cd Assessment360
-
Set up MongoDB:
-
Make sure MongoDB is installed and running on your machine or you can use my mongo db test url.
-
Create a
.env
file in the root directory with the following content:MONGO_URL=mongodb://localhost:27017/Assessment360
or
MONGO_URL = "mongodb+srv://<username>:<password>@<clusterName>.<clusterID>.mongodb.net/?retryWrites=true&w=majority"
-
-
Set up Enviornment Variables
- Create a
.env
file on the base of the directory. On the.env
file add the variables:MONGO_URL="" MAIL_SERVER="" (eg: smtp.gmail.com) MAIL_PORT=465 MAIL_USERNAME=""mallickabhishek.64@gmail.com"" MAIL_PASSWORD="" O_AUTH_CLIENT_ID=""
- Create a
- Setting up Virtual Enviornment (venv)
python -m venv venv
./venv/Scripts/activate
- Installing dependencies
pip install -r "requirements.txt"
- Creating super_user
python manage.py createsuperuser"
- Running the Application
python manage.py makemigrations
python manage.py migrate
python manage.py runserver
Type | UserId | Password |
---|---|---|
Faculty |
202 |
pass@123 |
Student |
402 |
pass@123 |
Method | Endpoint | Description | Request Body | Response Body |
---|---|---|---|---|
POST |
/admin/register |
Register a new Admin | JSON: {name,priority} | JSON: {token,user,admin_id} |
GET |
/admin/:id |
Get Admin details | NULL | JSON: {admin} |
Method | Endpoint | Description | Query | Headers | Request Body | Response Body |
---|---|---|---|---|---|---|
GET |
/student/assignment |
Get all Assignemnts of the Student of all courses | priority, status, due_date, page, limit | Authorization: student_id | N/A | JSON: {docs,totalDocs,page,limit,totalPages} |
POST |
/student/update-assign |
Create a new Assignment for Student under a Course | N/A | Authorization: student_id | JSON: {title,description,due_date,pdf_location} | JSON: {task,assign_id} |
DELETE |
/api/task/:task_id |
Soft Delete Assignment for Student | N/A | Authorization: student_id | N/A | JSON: {task,assign_id} |
Method | Endpoint | Description | Query | Headers | Request Body | Response Body |
---|---|---|---|---|---|---|
GET |
/discussion |
Get all Discussion of the User | task_id | Authorization: stud_id | N/A | JSON: {subTasks} |
GET |
/tests |
Get all tests allocated to the User | stud_id | Authorization: stud_id | N/A | JSON: {subTasks} |
POST |
/tests/update |
Create a new submit for test by Student under Course | N/A | Authorization: stud_id | JSON: {task_id} | JSON: {subTask,test_id} |
DELETE |
/tests/:test_id |
Delete test for student by faculty | stud_id | Authorization: stud_id | N/A | JSON: {subTask,test_id} |