Skip to content

Latest commit

 

History

History
161 lines (94 loc) · 7.89 KB

sugarizer-assignments-Rohan-Kumar..md

File metadata and controls

161 lines (94 loc) · 7.89 KB

Sugarizer Assignments

Google Summer of Code, 2022 Final Report

Student Name : Rohan Kumar

Email: rohanrajput16.phy@gmail.com

Github Username: codebloded

Mentor: Nikhil Mehra , Lionel Laské

My Work in Project

My work in the project is to add features which allow teachers to give assignments to students. Assignments are handled by a teacher from the sugarizer-server dashboard.

My project is divided into two phases:

  1. Sugarizer-server
  2. Sugarizer (Client Application)

I created some APIs for assignment feature in sugarizer-server. Also created some UIs called views in sugarizer-server dashboard to interact with assignments.

✔️ Work Completed

🟢 Phase 1 Sugarizer-server (Dashboard)

Features Implemented :

  • Create : Teachers can create assignment in the dashboard.
  • Edit : A teacher can only edit assignments made by themselves.
  • Delete : A teacher can only delete assignments made by themselves.
  • Launch Assignment : When the teacher launches an assignment, that assignment will go to all the students who are associated with that assignment.
  • Submit Assignment : This feature is used through the Sugarizer client app, which allows a student to submit their assignments.
  • Return Assignment : When the teacher returns an assignment for one student, that student can resubmit that assignment.
  • Update Comment : A teacher can add a comment to give some remarks or grades on a particular delivery.

I have build some Screens in dashboard.

  • Add Assignment

    add

  • Edit Assignment.

    edit

  • List All Assignment.

    kist

  • Actions in List all assignment view.

    lS

  • List All Assignment Deliveries.

    del

    Screenshot from 2022-09-27 17-13-32

    • Teachers can check the assignment of any student by clicking on launch assignment delivery button.
    • Teachers can add comments to the students to remark on any particular assignment.
    • This is how a teacher check and add comment on assignment delivery.⬇️

    mango

    • Such an assignment can be returned by a teacher to a particular student.

    ret After returning the delivery of an assignment, the status of that delivery is changed from "Delivered" to "Expected", which means that the assignment can be submitted again by the student to whom it has been returned.

    Functionalities in dashboard for assignments :

    • Search Assignment and Filter by Status. Screenshot from 2022-09-27 16-06-28

      • Filter Assignmet by its name.

      • Filter Assignment by its status.

      • Also we can filter the assignment by the combination of its name and its status. ⬇️ Screenshot from 2022-09-27 16-12-49

      • There are three types of status with an assignment. ⬇️

        Screenshot from 2022-09-27 16-15-37

    • Restrict to duplicate the assignment entry by journal view in dashboard. restrict

    🟣 Pull Request : PR #334

🟢 Phase 2 Sugarizer (Client App).

Assignments shown in Journal view in Sugarizer, where both the journal entry and the assignment entry are listed together. When the student login to Sugarizer, student will get an Assignment icon show in the toolbar of the Home View on which click which will open the Journal View. ⬇️

as

Features Implemented :

  • List assignments in journal view.

    Screenshot from 2022-09-28 02-50-07

    Screenshot from 2022-09-28 03-02-44

    • Assignment icon : Assignment icon has been placed so that it can be seen that this is an assignment entry.
    • See instructions : Created a popup to see the instructions for the assignment
    • ins
    • Due Date : Last date to submit the assignment.
  • Filter assignment.

    Filter Assignment button filters the assignments by journal and displays all the assignment entries. So, student can easily deifferentiate between the assignment and journal.

    fil

  • Forbid Actions. Implemented some forbid action like:

    • Duplicate : Students can't duplicate an assignment entry using the feature that is used to duplicate the journal entry.
    • Copy : Student can't copy the assignment entry.
    • Delete : Can't delete the assignment entry.

    Working ⬇️

    for

  • Sort by Due Date : This feature sorts the assignments by their due date. So that the student can sort and check which assignment due date is near.

    Screenshot from 2022-09-28 04-12-58

🟣 Pull Request : PR #1092

🟠 Miscellaneous work.

  • Documentation of APIs.
  • Tests for APIs

My Experience

My overall GSoC'2022 experience was very thrilling. I made small changes to understand the code base and build my project Sugarizer assignments. While doing this project, I learned to write high-quality code that fulfills all the project’s goals. I learned a lot of new libraries and worked on them. It was an amazing experience to write code that will be used by thousands of people around the world. Special thanks to my mentors Nikhil Mehra and Lionel Laské for helping me get a good grasp of codebase in the early stages and also throughout the project.