Updated 41 days ago

Proof of Learn

Proof of Learn is an innovative online platform that ensures interactive, transparent, and verifiable learning across 100+ blockchains, rewarding users with NFT POAPs for genuine engagement and accomplishment.

  • Crypto / Web3
  • DAO / Community
  • Creator Economy

Proof of Learn (POL) is an online learning platform that allows a transparent understanding of Web3 concepts across any blockchain or ecosystem. The main focus is on interactive learning, where users engage with the blockchain, deploy smart contracts, or invoke methods to complete quests and earn rewards. This is an advantage over traditional question-answer methods as POL verifies users' on-chain transactions, confirming their engagement and completion of what was required provided by the quests or resources. This approach enhances transparency and offers a more hands-on experience in learning about Web3.

Technical

POL is built on Open Campus, providing a central hub where all protocols and ecosystems can build and reward users for interacting with a given chain and contracts. All content and resources are open-source on GitHub, and the POL POAP NFTs are deployed on Open Campus, with metadata and information stored using IPFS.

The POL Learning Platform is structured using Next.js 14 and TypeScript, enabling a fast and efficient full-stack application environment for seamless design and development.

Functionality / Features

For a concise and detailed overview of how POL works, check out our demo here.

Since Apecoin is a sponsor, POL has developed a tutorial on ape staking, featuring quests to demonstrate how a protocol or blockchain can utilize POL to create engaging and effective tutorials. Participants are rewarded for their contributions by interacting with the blockchain or contracts by the ecosystems.

To explore the tutorial and earn an "I Have Staked an APE" POAP, visit: Staking $APE with Ape Staking Contracts.

Open-source knowledge

To keep POL reliable and transparent, all information must be available on GitHub. This allows protocols and ecosystems to create documentation and resources, and then submit a pull request (PR) to the POL repository for adding POAP NFT and displaying their resources on the learning platform. This allows the POL team and community to review these repositories to ensure the legitimacy and accuracy of the resources before they are stored and minted on-chain.

For example, here is the ape staking resource: Staking $APE with Ape Staking Contracts.

A typical structure should be as follows:

  • content: This folder will house all the write-ups and information (in Markdown) to be displayed. The subfolders (recursively) should follow the format {number}-{title} and will be used to navigate the resource. Each folder must contain a README.md with the content.
  • contracts: This optional folder will house contract templates that developers can submit. If interacting with an on-chain contract, it must be verified.
  • quest.config.json: This JSON file will store metadata for all the required quests and metadata used by POL and the POL POAP NFT. For a more generic template, view: POL Template.

An important roadmap is to provide documentation with detailed descriptions of how to simplify creating a resource.

Integrated IDEs

In order to maximize the interactive learning experience, POL is equipped with an IDE allowing learning to expand to over 100+ chains interacting with smart contracts or deploying new ones. Here we are in the staking section of the staking, and we can call methods. Of course, you don't have to use our IDE, as long as it follows what the resource says to complete the submission.

In this case, using the APE staking contract and calling the despositBAYC to stake your $APE.

ide-learning.png

Interactive Quests

As mentioned interactivity is the core of learning value, and we ensure that the POL POAP are earned by proving a user has done the task. Throughout the guide or resource, there will be a button to submit a quest. Not all the content will have submission as the content can just be purely information for the resource. However, if a quest submission is available then, a button will appear.

As mentioned, interactivity is at the core of the POL learning experience, and this is ensured so that POL NFTs earned are proof that they completed the tasks. Throughout each guide or section, a button will appear to submit a quest. Not all sections will have a submission option, as some may be just content for information. However, if quest submissions are available, the button will be present like the image below.

quest-submission.png

This will open up an input that allows users to add their transaction hash. Note, that depending on the quest, the transaction can be used to deploy a contract and interact with a contract.

In this case of Ape Staking, the section details the $APE staking contract and provides instructions on how the user can stake their testnet BAYC into the staking contract using despositBAYC to stake their $APE. Just note this is an example and in the previous section of the resource, we have provided sections to mint and approval $APE coin that also has quest submission. Of course, interaction (calling the despositBAYC) with the blockchain will provide a transaction hash that will be the answer to the quest submission. This will be validated and stored as complete for a given address stating that the user has completed the content.

quest-completion.png

POL NFT

POL POAP are one of the rewards that essentially NFT minted for an address for fully completing quests. This is the Proof that the user has learned and took on the task and verified on chain that these task were completed.

mint-poap.png

You can also view the collection that the user has completed and achieved, indicating that they have interacted with the resources.

user-profile.png

Utility (In beta)

Due to the lack of time for the hackathon. This is in its early stage and will be massively improved to simplify and create a better experience for creators and users to understand the POL resource and quest structure.

With the extension of the hackathon, we've developed a helper tool to test and build a quest.config.json for resources.

One key feature of this tool is the ability to generate a bytecode hash for contract deployment quests. This is especially useful for tasks that require users to deploy specific contracts, such as Oracles or Token standards. When creating a deployment quest, it's important to use the bytecode from the specific chain that will be used for the quest, as different chains may have varying compilers and bytecodes.

In the example image below, we're deploying a simple setter contract on Open Campus, using the bytecode from the contract (Note: The contract doesn’t need to be verified). utility-deployment.png

Then we can use such value, as a deployment quest. Here its indicating the successful quest is deploying a contract of this bytecode hash on 656476 (Open Campus Codex)

{
    "path": "01_deploy_your_first_token/05_deploy",
    "type": "deployment",
    "chain": "656476",
    "bytecode": "0x86d1b8039b28cf6e8bfbc8ec91d3e4cda65348f689bdc101b1fe39a9f590dcba"
}

The Quest Validator, is used to validate the schema of a quest.config.json. This is more straightforward, and make sure all the keys, and values are their to be used by the resource and provide the quest for the POL resource

3b86a560-ca65-4660-bfaf-6549a4c0eea5.png

The Quest Tester ensures that quests work correctly in POL by testing specific quests defined in quest.config.json. In the provided example, we're testing a deployment quest by submitting a transaction that has been confirmed on the blockchain to retrieve the deployed contract's bytecode and match it with the quest.

Please note that the example provided won't work for others since the transaction was made by a specific user. Additionally, this requires testing with a MetaMask account, so you'll need to connect the POL app to MetaMask for the validation.

c039f51a-340f-43a1-af8a-ec6b66fcec05.png

Future Plans

  • Documentation: Immediately after the end of hackathon, POL we create comprehensive documentation to onboard both the ecosystem and users to interactive with POL and fully learn the structure and learning process.
  • Entire Blockchain Support: Add support for other ecosystems like Move IDE and Stylus IDE (for Arbitrum), ensuring POL caters to a entire blockchain space for learning experience.
  • Oracle Verification System: POL can use Gelato Function to create an oracle for securely verifying the minting of POL POAPs on chain.
  • Automate PR Process: Current PR to metadata process is a manual process. POL can utilise GitHub Action to automate resource addition and POAP minting, streamlining access to the POL learning platform.
  • Integrate with Open Campus ID (DONE): Use Open Campus ID's to give learners control over their online personas, enhancing privacy and personalization. Update: Due to the extension of the hackathon, we have now integrated Open Campus ID as login!

All in all, Proof of Learn (POL) is a pioneering learning platform that offers decentralized and transparent education with a focus on interactivity. We aim to have ecosystems from across the blockchain space contribute to POL by providing educational guides, targeting millions of users, and onboarding developers on-chain. Check out POL and start learning now!