SolCodes | Programmable NFT Marketplace

Elevating Digital Art with Programmable NFTs - SolCodes unlocks a myriad of possibilities for artists to create the next generation of Digital Art

The problem SolCodes | Programmable NFT Marketplace solves

What is SolCodes

  • NFT Marketplace where Artists can upload, mint and sell/auction HTML files (with CSS, JS, images etc inside) as the major component of their artwork

Whom are we serving?

  • Empowers Artists to create (mint) and sell (auction) HTML based Programmable Digital Art
  • Facilitates Software Developers to explore better art frontiers
  • Allows Collectors to purchase, own, share and resell Programmable Digital Art

What are we solving?

  • The inherent rigid, static and inflexible nature of current Digital Art (NFTs)
  • The inability to build a Digital Art piece that can change:
    • on user interaction
    • over time
    • based on an API
    • based on any other internal/ external parameters

What's the impact?

  • Art is meant to be constantly evolving - we're just here to promote the next generation of Digital Art
  • Promoting the usage of HTML as the main NFT component, in order to usher a new era of truly immersive, interactive and customisable art

Current & Future

Existing Prototype

  • Supports creation of HTML based Digital Art
  • Supports creation of off-chain conditionals and allows connection to centralized APIs, all through JS


  • Support for Extended NFT Types - these would trully enable the Artist to upload an NFT with configurable assets/parts
  • Will help expand SolCodes into n different use-cases, for e.g., Async.art is built on a single-purpose use case of Master and Child layers. Instead, SolCodes should be able to support multi-purpose use-cases.

Full-fledged framework

  • Extension to WebAssembly and integration with state-of-the-art frameworks. This will allow SolCodes to truly upgrade from a single-purpose NFT marketplace website to a full-fledged framework.
  • With a framework in place, SolCodes will be able to support on-chain triggers for changing NFT states in much more depth.
  • Would also make SolCodes truly extensible - so that integrations could be built for wallets, and other Web3 applications.

Challenges we ran into

Lack of educational material

  • Any new, upcoming technology has it's own learning curve, but BlockChain introduced a myriad of resources to grasp, even before beginning to write code.
  • The Solana community is extremely helpful, but stil doesn't make up for the lack of tutorials and user guides.

Lack of infrastructure, maturity

  • Documentation, a basic necessity, is unclear in many growing repositories, hinting at a dire need to invest into the same.
  • Frequent downtimes on the devnet show that the developer-base is growing, but time to debug is still higher than usual.
  • Many of the projects are in their infancy - which means that they have a lack of documentation coupled with a lack of great structure, best practices, or rules of engagement. For e.g. Metaplex was init in June 2021.

Incident we ran into with Metaplex

  • Our submission is based on the Metaplex project, which provides an open-source solution of:
    • rust based block-chain programs
    • react based front-end program
  • The react app lacks a lot of best practices,
    for e.g.,
    • Upon building and deploying, the app connects directly to the mainnet, instead of the devnet or testnet.
    • Further, improper configuration forces the user to manually change variables in multiple places in order to correctly connect to a different Solana Network.
  • We solved this problem by diving deep into the code and some good old-fashioned debugging - Once we understood that the connection is forced to the mainnet, we simply had to find a way to connect to devnet instead.