Blacklines is a community-generated NFT platform., creating a unique piece of art over time. The idea behind Blacklines is to allow anyone to participate in creating community-generated NFTs.
Blacklines is a collaborative art project. Every canvas on Blacklines starts with a blank slate. In order to draw on the canvas, users first have to connect with Metamask, after which they can place a line on the canvas. With time and more contributions, a unique piece of collaborative art is taking shape. After a certain time the canvas is closed, and the canvas will be minted as a NFT (actual minting not implemented due to time). All addresses who participated in the creation are notified via EPNS that the drawing period is over and are invited to take a look at the final state of the canvas. Moving to what would have been possible given more time, the EPNS notification would have included a direct link to the NFT on Opensea, where interested parties could buy it. In a simpler implementation the revenue would go to funding a preselected public good, in a more complex version each person who contributed could vote on which public good to fund, with the money going to what the majority chose. Ideally this would involve users more and entice them to buy the NFT. Also important to note is that we recognize that being able to only use black lines to draw greatly limits the potential artistic expression. With more time we would add more colours as well as brushes etc.
We use Node.js for the server communication, React for rendering dynamic pages and socket for real-time rendering the pages. After computing the coordinates in the backend, we call the draw function on the smart contract from the backend, where we store the coordinates of each line as well as the address of the users. The smart contract is deployed on SKALE, which is especially useful for us because of their zero-cost minting. The smart contract was deployed using ethers and hardhat. Each address that participated gets stored in the backend, and once the canvas is closed, we loop through the addresses and let everyone know via EPNS that the artwork is finished. EPNS is super useful for us since it can pull the communities attention back to something they maybe did last week. Without the notification, they might not go back to check on the artwork, and this serves as a straight sales funnel into buying the NFT, maximizing public goods funding.