Digital Art Gallery
An innovative platform blending traditional artistry with modern blockchain technology. The platform features a curated selection of artworks, where each piece can be transformed into an NFT, serving as a digital passport authenticating the physical artwork. Unlike abstract digital representations, each NFT acts as a Certificate of Authenticity (COA) for a real, physical painting in the digital world. Built on the Ethereum blockchain, Digital Art Gallery is developed with Python Django for the core structure and enhanced with JavaScript for interactive features and smart contract functionality. Solidity-based smart contracts are integrated smoothly using web3.py, web3.js, and MetaMask, enabling seamless interaction with the Ethereum blockchain.
Challenge
The challenge was to integrate NFT minting with the purchasing process on an NFT marketplace so that the buyer covers the gas fee. Additionally, the platform needed to allow for price adjustments of individual NFTs without requiring modifications to the smart contract. Finally, a simple interface was essential for clients to easily add new NFTs with images, prices, descriptions, and more.
Solution
The platform, built on Python Django, provides a robust and user-friendly Admin UI, making it easy to manage artwork details in the Digital Art Gallery. To ensure each NFT purchase accurately corresponds to its designated price, cryptographic algorithms encode each NFT's ID, price, and description. All transaction signing occurs securely n the back end within a closed perimeter, preventing any buyer manipulation of the front-end JavaScript code to alter the NFT price during the request to the Ethereum blockchain. This approach ensures that the price remains consistent with the NFT's current value specified on the website, without requiring it to be hardcoded in the smart contract.
Components
Frontend: Developed with Python Django, featuring JavaScript enhancements for a dynamic and interactive user experience, along with blockchain interaction via the MetaMask wallet.
Backend: Powered by Python Django for secure and scalable application management.
Smart Contracts: Written in Solidity to securely mint NFTs on the Ethereum blockchain.
Technologies
Python Django, JavaScript, web3.py, web3.js, Ethereum, Solidity, MetaMask, Hardhat, OpenZeppelin.