GSoC’21 Week 3+4 Experience @CircuitVerse

Ayan biswas
3 min readJul 6, 2021

--

Preface : In this blog I will try to cover my experience in the 3rd and 4th weeks in the open source organization CircuitVerse during Google summer of Code 2021

GSoC with CircuitVerse

About Project 🚀

I have already described about my project in the previous blogs as well as you can get more info from the official GSoC Page , I am on track and developing new features for the LMS Integration with CircuitVerse project.

Currently Learning tools Interoperability specifications are being followed to make the existing codebase of CircuitVerse compatible with the LTI supported Learning Management Systems (Like Moodle, Canvas etc.)

Progress made in this period 🎉

For the connection of CircuitVerse with the external learning management systems according to the LTI specifications I have used the ims-lti gem for efficient authentication handling between LMSs and CircuitVerse.

Here are some of the key developments achieved in this period :

  1. Now any assignment of CircuitVerse can be viewed from any LTI supported LMS , the assignments are shown in iframe embed form in the LMSs and the requests (GET/POST from the LMS end) are authenticated by a consumer_key and shared_secret which is shared to the teacher while creating the assignment in CircuitVerse platform.
UI updated for creation of new assignments

2. CircuitVerse assignment creation form UI and the group page UI is updated such that the credentials as mentioned above can be generated by the teachers and they can see it in group page when logging again to their account.The credentials will not be shown in case of the logged_in user is a student.

UI updated of the group page

and also a separate modal will be opened when a teacher want’s to integrate a particular assignment with his/her favourite LMS like below

The modal contains the credentials required for addition of CircuitVerse assignments in different LMSs

Future Goals 🗓

Currently CircuitVerse has it’s own grading policy for the assignments and now main challenge of the project is to develop a method such that grades are in sync between the external LMS (like Moodle/Canvas) and CircuitVerse database.

Pull Requests made ✍️

I have already made two pull requests during this period here are they

  1. [#2292] Assignment addition in LMS as LTI tool
  2. [#2312] UI updated in CircuitVerse to generate required credentials for LTI tool addition in LMS end

all of my works done during this period can be found at the branch lms-lti in the main CircuitVerse Github repository.

Learning outcomes 📚

The concept of Learning tools Interoperability is a quite new to me and I have learned about how different learning management systems interact between themselves and shares common content hosted as well as I have learned about some of the good practises for developing in Ruby on Rails.

See my Previous Blog 📕

I have summarised by first two weeks experience of Google Summer of Code 2021 , please have a read here.

Thanks for reading……👋

Finally you have reached end of the Blog, if you found this Blog useful please give a clap and thank you for reading and Best of luck for you.🥳🥳.

--

--

Ayan biswas
Ayan biswas

Written by Ayan biswas

GSoC’21 participant @CircuitVerse || ETCE Undergrad class of 2023 @Jadavpur University