Inspiration

  • Basically building this platform will help to bridge the gap between the student communities and organizations which are working extensively for the student community. As currently they need to rely on their referral programs or some general platforms like linkedin or facebook to reach out to fellow communities. On the other hand most of the college students look at their coursework as a burden on them as they unwillingly participate in academic activities so building the platform where students are receiving some incentive based upon the performance they had. would motivate students to proactively participate in their course work to improve the performance score and gain more rewards.

  • Also with this platform students will also have a chance to receive the POA token for the event attended by them which is organized by third party orgs they can further leverage this POA to prove their attendance and learnings in the event.

  • This kind of platform which works on top of existing LMS platforms will open new ways for onboarding new users into the tech space. By using this platform students can actually understand the effectiveness and utilitarian value of web3 and it may act as a motivational dose for them to start their journey into web3.

How we built it

Polygon:

  • I had developed trustless and permissionless smart contracts which basically manages funds coming from advertiser end and distribute it to students based on their performance score each month in a total permissionless and trustless manner. Along with it i had also developed a Proof of attendence token collection whose NFT is issued to students by the organizer of event if student succcessfully take part and contribute in the event. and all the smart contracts and token contracts are deployed on polygon testnet.

Smart contract:

  • Whenever a new institute is registered a funds manager smart contract is deployed to polygon testnet (for now) which will manage and distribute all funds coming from advertiser to institute among all the students according to their performance score at the end of each month.

Superfluid:

  • I had leveraged the superfluid instant distribution agreements to allocate the share of overall fees received for the promotion from the third party organizations to each student based on the performance score and after allocating the share the funds will be distributed among all the students at the end of the month.

Pinata:

  • I had pinata service to store and retrieve the metadata corresponding to the POA (proof of attendance) token issued by the third party/edu tech organization to the claimant (student who claimed the POA token).

Gelato:

  • As we know that this platform would be incentivizing students based on their performance score at the end of the month for this we need to trigger the distribute function of the superfluid IDA smart contract without any third party influence. So I leveraged gelato to set up a task which would trigger the distribute function at the end of each month.

DAI Super token:

  • I had used stable token for the fees to be used by this platform and the same DAI token would be rewarded to students at the end of each month the only tweak i did is instead of actual DAI token the platform would be using the DAI super token which comes with the added superfluid functionalities on the top of existing ERC20 token methods as the the DAI token get compatible to be distributed using superfluid instant distribution agreement.

Firebase:

  • As this platform works as a LMS (learning management system) as well for the institute i need to save the course related data to the database which is private to the institute in a database so i used firebase for it.

Moralis:

  • I used moralis for setting up user wallet authentication whenever a new user comes to the platform he/she needs to authenticate himself before using the platform.

Chainlink

  • I will be using chainlink to make the student data which is store in offchain database firebase to onchain. So as to verify that the correct student is getting rewarded for his performance.

Challenges we ran into

There were some challenges which I ran into while building this project.

  • I wanted to implement the gas efficient approach of distributing tokens to the user as with naive approach the distribution will involves making a each new transaction to every user so for this i utilize superfluid IDA i was quite novice to superfluid so it took a while for me to understand the flow of how superfluid works and how can i leverage it into this project.

  • As whenever a new institute is registered i am deploying a new configured funds Manager smart contract to manager funds coming from advertiser to that particular institute as i wanted to do this in a gas efficient manner i tried multiple approaches such as using proxy, making clones and lastly after a lot of failure ended up using the factory child approach for deploying new smart contracts.

  • As this platform would be working as a normal LMS platform for institute and students it’s needs to have a database integrated which should hold information which is private to institute so i did a lot of research in order to search for a database which could store data privately for institute with no external cost but was not able to find one so ended up moving forward with using firebase.

  • This platform has three party infrastructure institutes, students and advertisers so testing the workflow of this platform was also quite tedious in nature.

What it does

  • Basically the platform I built can be used as an alternative to a normal LMS platform (Learning management system) which institutes can use on to take their normal course activities like assigning course works to students, taking quizzes, managing streams of students etc. Institutes just need to do a little setup work at the time of registration to grab out the special abilities of the platform to incentivize students for their work based upon their performance in course activities.

  • In brief the platform maintains the performance of each student in his/her course activities over the month and rewards students with some tokens (currently fDAIx) based on their performance score at the end of the month.

  • And the incentives come from the third party edu tech organizations. The third party edu tech organizations can come to the platform and can utilize it to promote their advertisements, take surveys and conduct events and inorder to do so they will be required to pay some fees ( in the form of fDAIx token) and the platform will be utilizing that fee collected from third party edu tech organizations to incentivize students.

Some major set of features included into the platform are:

Basically as this web application would handle all the course related work of students it has at least (at the current stage) the minimal functionalities of a basic CMS platform which includes:

  • Students are able to register themselves to the platform.
  • Students are able to join the corresponding institute along with the stream they were in that institute.
  • Students are able to see assignments and submit assignments if there are any.
  • Institutes are able to register themselves to the platform
  • Institutes are able to manage its profile and add multiple streams into their workspace.
  • Institutes are able to assign assignments to the students
  • Institutes are able to view the work submitted by the students and should be able to mark the received submission.
  • Advertisers are able to register themselves to the platform.
  • Advertisers are able to see all the registered institutes so that they can select which institute they need to promote their content.
  • Advertisers are able to promote their course advertisements among the registered student communities.
  • Advertisers are able to promote/showcase the events they are organizing and be able to release the POAP (proof of attendance protocol) for the attendees of the events.
  • Advertisers are able to release instant tokenized modules. These modules would instantly reward students who completed it.
  • Advertisers are able to see all the claims which students make for getting a POA token and on the basis of claims they should be able to mint them a token.
  • Students are able to see the earning they had over this platform
  • Students are able to update their fund share at the end of the month.
  • Students are able to see all the POA issued to them via a third party platform.
  • Students are able to see their performance score into the platform which would be later on used to allocate the fund share.

Accomplishments that we're proud of

Some of the accomplishments i achieved while building this platform:

  • Took a small survey among the students to understand whether this kind of incentive based learning can help them or not and receive positive response from them regarding this approach.

  • Was able to make a permissionless and trustless way of distributing incentives to students on monthly basis based on performance score coming from third party edu tech organizations in a gas efficient way.

  • Now edu tech organizations will have a direct way to communicate with students. Now they are no longer required to rely on general platforms like linkedin, facebook or some referral programs to reach out to students.

  • Implementing LMS features into the platform.

What we learned

This project helped to learn about so many new things in web3 ecosystem those are:

  • Multiple ways of making smart contract gas efficient like using proxy based approach or contract cloning.
  • Learned about the workflow of superfluid protocol, how it works and what’s the overall architecture behind it.
  • Learned about how we can use gelato to set up recurring tasks.
  • Learned how to use pinata to pin data to IPFS and retrieve the pinned data.
  • Used Moralis for the first time for wallet based user authentication.

What's next for Learn And Earn

Future work to be carried out for the platform is:

  • Need to make the LMS side of the platform more extensive(basically need to add more features to it) and robust.
  • Enables gasless transaction for the transaction at students ends to make easy onboarding of users..
  • Enable dynamic fee calculation based on certain parameters as currently in development stage a fixed no of fDaix token is charged from the advertiser to use this platform.
  • Improve over the advertiser dashboard to monitor ongoing activities. As currently advertisers can’t see the ongoing advertisements, surveys and events so need to work on adding those features.

Built With

Share this project:

Updates