GithubHelp home page GithubHelp logo

dravyabansal / cryptovorse Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 371 KB

This is crypto app

License: MIT License

Shell 0.05% TypeScript 48.44% JavaScript 1.19% HTML 39.32% Solidity 9.94% CSS 1.06%

cryptovorse's Introduction

Welcome to The Crypto Studio

alt text

Demo video

Our application is hosted on those links

Authors

Description

Crypto Studio is a Dynamic ERC721 Collection built for digital artists. Under the hood, we are utilizing tableland a new narrative that brings SQL into smart contracts that unlocked us to create a native dynamic experience for our users NFTs. We are also leveraging IPFS for storing (images - HTML - mp3) files for our NFTs into the network through NFT.STORAGE.

The Crypto Studio Collection supports all kind of NFTs like :

  • Interactive visualizers using the CID of HTML pages
  • Song Albums for singers,trapers,electronic music creators
  • Just classic Image NFTs

We provide them all of them from our UI!

Collection on OpenSea

Each Artist/User first has to mint a Space. A space is like his signature on top of his NFTs. Digital artists can create a whole Collection|Album based on their space.A space is nothing more that a pair (trait_type = SpaceName , value = "A name space") on top of every NFT. Artists can only mint an NFT on top of their owned spaces. If they dont grab a unique space they are not allowed to mint their creations.

Our platform is open to everyone. For now, we are providing some precoded dynamic & interactive audio visualizers for newcomers to come and mint them with their preferred soundtrack and change it whenever they want to.

  • The future of CryptoStudio is to make it more accessible to the public. We want to make it so that anyone can create their own Dynamic NFTs with zero coding experience by creating a free and open to use web-based tool for designing and developing dynamic 2D & 3D NFT models by introducing The Studio Playground
  • We also want to make it so that digital artists can come and build cool things by providing a guide (DOCS) of how to use our native Dynamic features written natively inside the CryptoStudio smart contract on top of their creations.

Our NFTs are based on HTML files and a p5.js script for playing the visualizer and the sound. In the upcoming versions we are going to use more libraries like p5.js.

The HTML file is getting uploaded on IPFS and that derives the animation_url that is part of the NFT metadata.

The dynamic features for changing the audio track of an NFT come into place by using the changeNFTaudio function which is located inside our contract. This function can be called only by the Owner of an NFT that wants to change the soundtrack of his NFT. The contract interacts with tableland to update the audio column of that NFT with the new audio CID!

  • We also added the addAttribute & updateAttribute functions for users to monetize their NFTs us they want ( Add , remove , update ) attributes and create new dynamic utilities

NFT owners can add and update their NFT metadata by interacting with the cryptoStudio Smart contract as they want except the animationURL and the spaceName trait attributes, to keep the basic art and the creatorSignature immutable.

Here is the prototype Architecture of our NFTs

Here is an HTML example :
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/constants/nfts/nft7.html

SOCIAL_LAYER

Each user has his profile based on the ceramic network using orbis.club

We also include a public grouChat for anyone into cryptoStudio to connect with each other. This is established by using Orbis.club and ceramic network which is an IPFS implementation!

Each collection space contains a seperated group chat with tokengated access controll by leveraging Orbis.club & lit.protocol for the spaceNFT owners and give them a decentralized discord experience.

Technologies Used

IPFS & FILECOIN usage

This is how we used IPFS & FILECOIN

NFT.STORAGE
All the files that consist an NFT are stored on the IPFS network using NFT.STORAGE The code snippets that are using NFT.STORAGE modules are located here:
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/hooks/useNftStorage.ts
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/pages/create-nft.tsx
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/pages/api/updateHtml.ts

SPHERON
We uploaded our frontend into IPFS using Spheron. Here is the Spheron IPFS hosted frontend url of The Crypto Studio :
https://the-crypto-studio-20be90.spheron.app/

VALIST
We uploaded our frontend into IPFS using Valist. Here is the Valist IPFS hosted frontend url of The Crypto Studio :
https://bafybeieekfc5qpb5253kom33wlw3hb75w62ug3ob34upylkwf22ikf7axu.ipfs.gateway.valist.io/

CERAMIC NETWORK which is based on the IPFS libP2P stack
We are leveraging Orbis.club for our users Profiles and for creating communication discord like channels for each Space but also a unified and open GroupChat for the Crypto Studio users!
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/components/ChatContent.tsx
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/components/ChatBox.jsx
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/pages/create-nft.tsx
https://github.com/Suhel-Kap/the-crypto-studio/blob/main/components/UpdateProfile.tsx

Tableland usage

Tableand is used to create the metadata layer of the Crypto Studio NFTs inside the Smart Contract take a deeper look in the SmartContract

Here are the data inside the SQL Tables. Only our SmartContract has access control on the tables!!! Check our decentralized databases content :
main_table = https://testnet.tableland.network/query?s=SELECT%20*%20FROM%20main_80001_3764

attribute_table = https://testnet.tableland.network/query?s=SELECT%20*%20FROM%20attribute_80001_3765

spaces_table = https://testnet.tableland.network/query?s=SELECT%20*%20FROM%20space_group_80001_3766

SmartContract


Our contract is deployed and verified on polygon mumbai here is the mumbaiScan Link .
https://mumbai.polygonscan.com/address/0xCa23f7a27bF973bb9E21a6FA8bA21cd4a89A51DD#code

cryptovorse's People

Contributors

dravyabansal avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.