Sports beavers and NFT from the first VKontakte graffiti - what projects were created by the participants of the first VK NFT Web3 hackathon
Fiery hello! This is a longread from two Ivans from VK: Ivan Rastorguev, who knows everything about the VK Mini Apps platform, and Ivan Boychenko, who develops the NFT direction on VKontakte. We recently held our first Web3 online hackathon VK NFT × Definition and would like to share with you its results and our plans for the development of NFT technologies in our services.
Some context
VKontakte is developing the Web3 direction and plans to make NFT a mass technology that will be available to all users and content authors. For its development and scaling, the VK Mini Apps platform is excellent, on which you can implement almost any mechanics using the public API.
At the hackathon, we invited developers to try their hand at creating and developing NFT services, solving real problems from VKontakte. We are satisfied with the results and will continue to hold similar events: so that more participants can start, develop and monetize their solutions, and possibly get into our team and develop NFT already within the social network.
History of the hackathon
As a social network, we strive to make NFT technologies understandable and easy to use and give our users new opportunities for self-expression and monetization. Now we are integrating VKontakte's NFT using the mini-application platform - this is a convenient way to add any new solution to the social network. Already in the application VK NFT users can display tokens in their profile - put NFT on an avatar or put them on a showcase. You can see the unique properties of tokens: author, collection name, rarity level, contract address. This allows you to check the authenticity of the image and make sure that it really belongs to the author, and not found by him on the Internet.
VKontakte plans to become the main platform in Russia and the CIS where NFT technologies can be developed and offer any non-standard solutions for users. That is why we decided to formulate part of the tasks that we face in the near future and hold a hackathon.
At the event, talented developers solved real problems in developing internal infrastructure initiatives related to the integration of VKontakte NFT technologies. We challenged them to integrate solutions related to digital art, collecting, tickets, access to content and communities, and philanthropy into the social network. The most successful and close to working projects will be finalized to ready-made solutions and the ideas of the participants will be tested by tens of thousands of people, which will be used by millions of people.
It was the first own event for NFT developers from VKontakte, and it immediately became the largest Web3 event in Russia and the CIS. We received 850 applications for participation, and in the finals we awarded the 12 most interesting (according to the jury) projects that had viable MVPs in their hands.
There were three tracks at the hackathon: two were dedicated to specific tasks, and the third one was for the participants' choice:
- Develop a VKontakte mini-application in which the user can create content with unique text, image, link - and block access to it via NFT. Other people, in turn, will be able to see a preview of the content from user A, but only those who are whitelisted by the content author can access it.
- Develop a VKontakte mini-application in which one user can create an NFT ticket, and the other can receive an NFT and perform on-chain validation of its availability.
- Think about how Web3-technologies could make the platform even more interesting and attractive to users.
And separately, three winners were awarded by the Solana blockchain platform. The company has prepared three grants for the best solutions that teams have developed on this blockchain.
How it was, you can see in the video:
The winners turned out to be such cool ideas that we were convinced that the hackathon was not in vain! Below - about the projects that two Ivans subjectively liked more than the rest, and you can see all the prizes - nbsp; here .
Application for issuing NFT tickets for events and verifying their authenticity using a QR code
Web9000 Team
In the app, you can issue NFT tickets for any event: a garage sale, a puppet show put on by your children, a concert by your favorite artist, or a group meditation. NFT tickets are protected from forgery and dual use, and bonuses for event guests can also be sewn into them.
In addition, the blockchain is about an inalienable right of ownership. For example, using this type of application, users can manage the sale of electronic tickets in the secondary market by programmatically setting a commission of 10% in favor of the event organizer.
Also, thanks to them, the organizers will receive convenient tools for sales analytics, and users will receive openness, if we are talking about public blockchains in which the entire history of transactions is known. This can additionally attract advertisers and representatives of concert venues.
The application interface is simple and clear:
From the very beginning of development, the team focused on introductory guide to developing VK Mini Apps. Algorithmically, the application distributes tokens to users using merkle tree . The guys from Web9000 added the so-called metatransactions - this allows you to save gas and increase the convenience of using the blockchain without diverting user traffic to the crypto exchange. The VK Mini Apps platform is responsible for hosting static data.
Application features:
- The NFT creator creates a whitelist in one step, which is based on the mechanics of merkle airdrop. Multi-billion dollar drops supported.
- Users do not need cryptocurrency to send transactions. The costs are passed on to the service without sacrificing security or uptime. At the same time, decentralization is maintained.
- The protocol also supports regular transactions, directly with gas.
- Optimized transaction fees (for the service).
- Issued ticket collections are integrable into other NFT platforms.
- Can be integrated into an existing DEFI, following the DEFI LEGO principle.
- Easy to integrate NFT ticket purchase mechanism.
- On-chain verification by QR can be accepted even by a smart contract.
- The ticket after passing to the event is not burned, it can be collected.
- On-chain protection against double use of the ticket without additional transactions.
- Flexible configuration of access levels thanks to the mechanics "each token has its own metadata".
What technologies were used for the prototype:
- Hardhat and Solidity - for smart contracts.
- Ethers.js and Web3 Wallet (Metamask) - for the client on VK Mini Apps.
- Express, RocksDB and Ethers.js - API service for storing Merkle tree data and relaying metatransactions.
The backend with merkle airdrop mechanics is insensitive to hacking - even if the data is stolen, it will not be possible to use it maliciously. However, total data loss must not be allowed with Merkle trees, so additional data storage with mandatory backups is needed for protection.
Web9000 will prepare all the written functionality for launch, finish the little things and create a normal front-end with thoughtful UI / UX. And in early April, they plan to launch the first version of the MVP with tickets for trial events.
Service for turning your publication into a NFT in a social network
PRIMATES Team
Thanks to the application, users will be able to turn their VKontakte publications into NFTs - for example, an old but valuable post on the wall, their first graffiti or a declaration of love. The resulting digital assets can be stored in your storefront or sold on the marketplace.
Thanks to a special library from VKontakte - VK Bridge, the application, with the permission of the user, receives information about the necessary posts and offers to make them NFT.
Footnote: The VK Bridge library is a special method that allows applications to use the VKontakte API and the API of the operating system installed on the user's device.
First, choose your wallet:
Then we select the publication, generate a token and put it on the showcase:
- Minify NFT from your post.
- View a collection of NFT posts, including those received from someone, in the My Tokens tab.
- Make a transfer of the post to another wallet - for the VKontakte user, it will be displayed in the "My tokens" tab.
- View a showcase of all NFT posts made through the widget.
- "Burn" the NFT so that it no longer shows up in "My Tokens".
The following developer tools helped the guys from the PRIMATES Team in their work:
- method wall.get - returns a list of posts from the user's or community's wall.
- method wall.getById - returns a list of entries from the walls of users or communities by their identifiers.
- VKWebAppOpenWallPost - opens in a separate window (on top of a mini-application or game) a post published on the wall of a user or community.
There is a slight excess of crypto-specificity in the application, but it does not interfere, but on the contrary, it complements the impression of working with NFT and opens up more opportunities.
A single profile for authorization in any third-party services - for example, to find a job or medical services
Command VKSOUL
The solution of this command helps the user to create a “digital identity” (Soulbound token), mint it into an NFT wallet and use it as a single profile on different sites and services. But at the same time, the user will manage privacy and security independently and centrally.
Footnote: Soulbound tokens (“Soulbound Tokens”, SBT) are non-transferable tokens that represent a person’s identity using blockchain technology. They may contain health information, a resume, and other data that characterizes a person or organization. Such tokens are issued and stored on a wallet called Soul (“Soul”). Each person can have several of these wallets, which reflect different areas of his life.
This is something like an analogue of the social buttons “Log in with (some hype service)”, only in NFT. At one time, social buttons were a powerful growth driver for Web 2.0 services, and today SBT plays a similar role for Web3. The authors also see their application as a key to any blockchain services: it is enough to log in once through your wallet, and then calmly interact directly with smart contracts.
Authorization management in third-party services is not the only function of the application. It also allows you to:
- manage subscriptions and their payment;
- apply the system of achievements to display the rating of specialists and members of various communities;
- interact with DApps (decentralized applications) outside of VKontakte: voting within communities, participating in meetups and receiving mailing lists with reports.
In the application, you need to connect your wallet and mint the token. It contains on-chain data (reputation achievements) and off-chain data (integrations with various services). This token can be connected to your VKontakte account, and other users will see all your achievements.
Separately, we note the competent and balanced implementation of on-chain and off-chain data storage, which allowed the team to quickly solve the problem and not get stuck halfway to victory. And the well-designed, intuitive interface with the expected behavior deserves praise.
During the hackathon, with the help of a mentor and open documentation, VKSOUL made an MVP and an example site with solution integration. On the example site, you can log in through SBT and buy a ticket for a concert. Now we are working on updating the design and smart contracts in order to soon go into production with a solution that supports five blockchains at once.
Fitness game with NFT character upgrade
Team Sporty Beavers
Historically, the practical application of NFT began with games, and the Sporty Beavers decided to go this route. So the guys plan to motivate users to comprehend the world of Web3, learn how to use wallets and blockchain, while doing sports and various activities to improve mental health.
The team did a great job and actually breathed life into a separate technological direction of crypto games on the VK Mini Apps platform. Sporty Beavers combines the best practices of classic Free-to-Play battlers with the rising popularity of Free-to-Earn NFT games, all to encourage people to exercise who are bored with just exercising.
The authors have reworked and intelligently combined two well-known mechanics of typical Web3 games: you can get a generated beaver character when you first enter the game and mint it into your wallet. Why beaver? The cats are already busy, and the beavers are smart and cool - and have not yet met in such games. In the configurator, you can customize your beaver: choose color, height, shape of ears and paws, various accessories; and later, you can buy clothes or other accessories in the in-game store. Performing physical exercises from the application, you try to defeat the characters of other users according to the principle of "rock-paper-scissors" - strength-dexterity-endurance. If you win, you get game coins with which you can upgrade your beaver, and in the future it will be possible to sell it on the marketplace.
In the application, it will be possible to pay for the creation of tokens in rubles through VK Pay. By purchasing in-game items for the character, it will be possible to speed up the leveling of the beaver and thus gain an advantage in competitions with other users.
Pavel Zakharov, CEO of the Sporty Beavers project: “This will be the first such game on the Russian market. Now VKontakte has about 100 million MAUs all over the world, and after moderation, the game on the VK MIni Apps platform will be able to immediately reach a large audience - this greatly simplifies the life of startups. And there are few such competing games on the world market, and none of them is adapted for users from the CIS.”
Constructor of documents and forms of strict reporting
Team13
A constructor with a simple filling of an agreement or a ticket with details, cost and payment procedure. After that, the constructor creates a non-fungible token, performs on-chain verification, and stores information about the document in it. This NFT-based contract creation and moderation service will simplify the creation of legally significant documentation and relationships between counterparties. The team was awarded one of the grants by the Solana blockchain platform.
Let's say the user is running a business, such as selling, renting property, or providing services. Using the Doker application on the VK Mini Apps platform, he will be able to create appropriate templates for contractual documents or strict reporting forms. After the client writes a request for the provision of services, the application sends him a pre-filled template in the form of a link to the document directly in the VKontakte message. The client can fill out this template, make the necessary changes and sign. After signing on the client side, the contract is returned to the performer, where he signs it and releases the token with one click.
Registration of contracts using NFT:
Docker Application Architecture:
Application to access content via NFT
Unknown brand team
The application plays the role of a whitelist: in order to gain access to some copyrighted content, users must first buy the NFT tied to it. Access can be sent to you as a gift, but to open it you will need to bind a crypto wallet, for example Metamask.
In the application, the user can create content in the form of NFTs and specify the person who can view it. Content information is sealed with a dynamic encryption key that is generated when creating NFT content - only the user to whom this content is addressed can read the metadata that was used to create the token.
With the application you can:
- Sell tickets to events and provide access to unique NFT content for people who bought a ticket.
- Create your creativity in NFT and make it available to a certain group of people (for example, to those who subscribed to your community).
- Store documents by converting them to NFT and opening them only to those you want to share them with.
WhiteList will open up new opportunities for communities and content makers - they will be able to control access to their unique content, protect intellectual property more reliably and receive additional monetization of their creativity.
In working on the project, the Unknown brand team used the Metamask and Ethers.js documentation. There were no integration problems due to the use of classic TypeScript. In the future, they plan to popularize their product and develop it technically and functionally. We would like to be able to connect Metamask on mobile devices (to bypass the iframe), support Ethereum VM and TON FunC.
Afterword
You can already propose and create advanced NFT projects on the VK Mini Apps platform. You can now get in touch with VK NFT in a mini-application that allows you to install avatars and tokens on the showcase. All product news can be found in the official VK NFT HUB community, where announcements of future events for developers will appear. The team is open to new suggestions and is ready to help with the development of third-party applications on the platform.
And we will continue to improve our technology. In 2023, the VK NFT team has several global goals - expanding the list of supported blockchains, opening NFT to communities, and supporting its own marketplace. Therefore, the developers will have many tasks, and you can always find something for yourself that you like.