Skip to content

Latest commit

 

History

History
108 lines (76 loc) · 3.56 KB

File metadata and controls

108 lines (76 loc) · 3.56 KB

GraderPro

This repository is an extension of the AutoGrader repository, with the added feature of diagram evaluation. For more information, check out AutoGrader and the research paper published in conjunction with it. GraderPro is a robust and efficient grading system designed to simplify the process of evaluating assignments, projects, and exams. With a focus on scalability and user-friendliness, GraderPro leverages modern technologies including TypeScript, Python, and web-based interfaces to provide an intuitive grading experience.


Features

  • Automated Grading: Execute grading scripts to automatically assess assignments and projects.
  • Customizable Rubrics: Create and manage grading rubrics tailored to individual courses or assignments.
  • Analytics Dashboard: View insights and statistics for graded submissions.
  • Multi-language Support: Implement grading scripts using TypeScript, Python, and more.
  • Secure and Scalable: Ensure security with modern authentication methods and scalable architecture for large class sizes.

Tech Stack

GraderPro is built using a combination of modern technologies to ensure high performance and flexibility:

  • TypeScript : For scalable and maintainable front-end development.
  • Python : For backend logic and scripting capabilities.
  • CSS : Styling for the application.
  • JavaScript : Enhancing interactivity in the front-end.
  • HTML : Structuring content for the web.

Installation

Requirements

Before installing GraderPro, ensure you have the following:

  • Node.js (v14 or higher)
  • Python (v3.8 or higher)
  • npm (v6 or higher)

Steps

  1. Clone the repository:

    git clone https://github.com/PranavDarshan/GraderPro.git
    cd GraderPro

    NOTE: Change the api key in Frontend/TeacherFrontend/src/pages/UploadQuestionPage.tsx and Grader/Grader/settings.py

  2. Install dependencies:

    npm install
  3. Run the project:

    npm run dev
    python manage.py runserver
  4. Open your browser and navigate to:

    http://localhost:5173
    http://localhost:5174
    

Usage

Adding Assignments

  1. Navigate to the "Assignments" tab.
  2. Click "Create Assignment" and fill in the details.
  3. Upload assignments for grading.

Grading

  • Use automated scripts or manually grade assignments.
  • View real-time analytics and feedback.

Exporting Grades

  • Export grades in CSV format for integration with other platforms.

Results

Watch the youtube demo for the results.

Teacher Frontend

Fig 1. Upload Questions

Student Frontend

Contributing

We welcome contributions to GraderPro! To contribute:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature-name
  3. Commit your changes and submit a pull request.