Tuno is a gamefied content discovery and curation platform. It is built to support the decentralized web, but offers a user experience that is familiar to the everyday user.


Web 2.0 is cluttered. There is a wealth of available content and countless services for the discovery of this content. Be it Reddit, Instagram, or Medium, each platform is biased in its own way, with its own private cache of collected user data and its own unique incentives for providing the service.

On the other hand, the world of Web 3.0 content is blossoming, yet there exists no great way to browse and explore the decentralized web. There is no Google or Reddit for the future of digital media.

This situation presents a unique opportunity. We wanted to create a gamified content discovery platform that:

  • Is biased only by the equal opinions of its users
  • Rewards the users for the distribution of valuable content, instead of the content platform itself
  • Supports viewing and sharing content on the decentralized web

Introducing Tuno

Tuno is a platform to share and rank the best content on the web. Users share their favorite content on the platform and rank posts using a voting system. We currently support the following sources of content, with more integrations to come:

  • Traditional web 2.0 links
  • IPFS content hashes (served through the ipfs.io gateway)
  • Unstoppable Domain links (resolved to the IPFS hash of the underlying content)
  • Media uploads up to 10mb, which are uploaded to IPFS and served through a gateway

Some future integrations include support for Ethereum Name System (ENS) and Handshake domains (HNS).

Every 24 hours, a tally is executed. After the tally, content shared within that timeframe can no longer be voted on. The top scoring post is then given a Top Post Award. This award is minted as an NFT on the Polygon blockchain using an ERC-721 compliant smart contract and issued to the author of the post. We currently issue Web3-compatible wallets to each user, but hope to allow users to attach their own wallet in the future.

To additionally gamify the ranking process, each user is limited to a set number of votes per time period. In the future, we can reward users for voting (for example, receiving tokens if they upvoted a top-ranked post).

The best content on Tuno currently represents a global ranking of the posts. In the future, we hope to introduce domain-specific spaces, which users can join to share and view content for a specific interest. Additionally, we believe that we can leverage the cross-chain compatibility and the scalability of the Polygon blockchain to introduce further reward structures. Some examples include peer-to-peer gifting of awards and a native token.

How It's Built

Tuno is currently a Next.js webapp that uses a MongoDB database. We leverage Material Design for our design philosophy. To support the decentralized web, we do the following:

  • IPFS content is served through the ipfs.io gateway
  • Unstoppable domains are resolved using the resolution NPM library
  • Uploaded content is stored using web3.storage onto IPFS

The webapp is deployed on Vercel with cron jobs for the tallying process running on Github Actions. Our top post NFT is minted on the Polygon blockchain (Mumbai testnet) with a contract developed using the Tuffle Suite and deployed via the Remix browser editor. The deployed smart contract can be viewed on PolygonScan.

Why Polygon?

Ethereum is currently the de-facto standard for minting and transferring NFTs. However, Ethereum has encountered various scalability issues. For example, gas (transaction) fees on the network has ballooned enormously during periods of high transaction volumes.

While we believe in the future potential of Ethereum, we believe that the platform is more suitable for a persistent "store" of NFT assets rather than a platform on which to delegate high transaction volumes.

To address these scalability concerns, Polygon has developed a protocol for building scalable "side-chains" that remain compatible with the Ethereum network. This means that tokens minted on Polygon can be transferred to and from the Ethereum network. Given the nature of the platform and our plans to increase the variety of NFT-based awards on Tuno, we believe that Polygon is a more suitable environment to house our smart-contracts than Ethereum.

In the future, we hope to work with Polygon to create our own side-chain configured specifically for our use-cases. Tokens minted on this side-chain will remain compatible with the greater Polygon network as well as Ethereum. This means that award-holders will be able to transfer their NFT's onto the Ethereum main-chain in the event of a sale, or for persistent storage.

What's Next?

With the help of the organizers, as well as the Polygon developer team, I hope to assemble a team to accelerate feature development and the creation of a go-to-market strategy for Tuno. Major areas of future feature development for Tuno include:

  • Support for additional web3 protocols, such as ENS and HNS content links
  • The ability to login directly with a web3 account (with Metamask or similar client) instead of email
  • The introduction of spaces, which are domain-specific communities where the content is focused towards a particular interest, similar to Reddit communities
  • Introduction of a native token, which can be used to purchase awards for posts

Tuno is the start of a suite of user-first platforms built for the decentralized web. I believe that blockchain and other web3 technologies have matured sufficiently for the development of user-facing applications. I hope to begin constructing an ecosystem of user-centric applications, built upon a shared token, such that we can leverage the network effects from the combined user-base of individual services. Some ideas include:

  • The creation of a user data silo, upon which the user has full access control. External applications (including those within our ecosystem) must request access to personal data such as browsing preferences
  • An IPFS powered chat service where data is hosted only by nodes run on the client applications of the participating users

Built With

Share this project: