Inspiration
We wanted to make a societal impact by expanding the digital art market with non-fungible tokens. The recent rise in the use of NFTs has created a whole new marketplace for digital art, allowing creators to sell their own art online in a secure manner. Seeing the success of things like CryptoPunks and NBA TopShot had us inspired to come up with our own designs. Everyone has heard of the phrase 'Save the Turtles' and of how pollution of our oceans is impacting wildlife, so we decided to combine these two ideas into our project: "Non-Fungible Turtles."
What it does
We designed a website that contains most of the information about our project, which I have copied below.
What are Non-Fungible Turtles? Non-Fungible Turtles (or NFTurtles, for short) are randomly generated pixel art turtles available for purchase on our OpenSea collection. Every unique turtle is represented by an NFT (Non-Fungible Token), giving you digital ownership over it. The Turtles are made by using the hash code for the most recent Ethereum block that is mined. That code is run through our program in order to give our turtles some variety, whether it be through color, shell texture, hats, vehicles, or accessories! The price of the turtles will steadily increase until they run out, so make sure to adopt one before they are gone!
What happens when I buy a turtle? We all want to save the turtles, but not all of us are smart enough to do it. That's why we are giving 50% of proceeds to the Sea Turtle Conservancy. Unlike us, they will put it to good use. Every turtle counts!
How often are new turtles generated? Turtles will start coming out fast, and take longer over time. A turtle will take 3x its unique turtle number in minutes to generate. For example, the 5th turtle that is made will take 15 minutes to generate after the 4th one is born. Check the timer at the top of the page to see when the next turtle will be born. They may not be available on OpenSea for purchase immediately upon their birth, so check in frequently so you don't miss out!
How are the new turtles generated? Each turtle has a primary color for its head and body, as well as a secondary color for its arms and legs. The primary color is randomly selected off of a blue-green gradient, while the secondary color is picked off a normal distribution based on the primary.
A turtle’s shell can have a duo-color texture or tri-color texture, where colors are picked randomly off a rainbow gradient, or a fully rainbow texture. The probabilities for the textures are as follows:
-Duo-Color: 50%
-Tri-Color: 31.25%
-Rainbow: 18.75%
Vehicles are also available for our turtles. 12.5% of all turtles will have a vehicle. Here are the probabilities of each vehicle overall:
-Skateboard: 6.25%
-Scooter: 3.125%
-Hoverboard: 3.125%
A turtle can have a hat as well. 37.5% of all turtles will wear a hat. Overall, each hat has this probability of appearing:
-Sombrero: 7.03125%
-Cowboy Hat: 7.03125%
-Helmet: 7.03125%
-Santa Hat: 7.03125%
-Wizard Hat: 7.03125%
-Rainbow Propeller: 2.34375%
There are 3 possible accessories for a turtle. Each of them has a 12.5% chance of appearing. Turtles can have anywhere between 0-3 accessories. The available accessories are:
-Tongue Out
-Sunglasses
-Spikey Shell
How we built it
We developed a python script to randomly generate pixel art turtles based on a 64-bit hash. This script is available to view on our website. Then we used node.js to manage the backend of the webserver system. MongoDB was used to store information about the turtles, while we used react to build the front end of the website.
Challenges we ran into
The two people comfortable with developing the back-end were most experienced with different technologies (Node.js and Python). Integrating these tools and their different purposes together proved to be a logistical challenge.
Another challenge we faced was our team's lack of artistic experience. We overcame this by using online educational resources and thinking about computer graphics in a way that took us out of our comfort zone.
Working with a large number of files that were created by all 4 of us caused some discourse in the initial organization of our project. However, once we got into a good rhythm, we were able to smooth out the process.
Accomplishments that we're proud of
- Creating an algorithm that can generate over nonillion aesthetically unique turtles based on a single hash derived from the blockchain
- Creating a system to manage the creation of the unique NFT Turtles and displaying them for users to view.
- Integrating the generation of the turtles with a web server back-end, database, and user front-end
- The cute animation of the turtles on the website
What we learned
- How to make a full-stack web application and how to connect the front-end with the back-end
- How to randomly generate pixel art using python
- Storing information about the turtles using MongoDB
- Strengthen our skills in front-end website development
What's next for Non-Fungible Turtles
We plan to market Non-Fungible Turtles to a wider audience as all 512 of our turtles are generated and uploaded. Additionally, we believe that this idea of selling NFT's for charity can be implemented by other charities and apply to larger markets.




Log in or sign up for Devpost to join the conversation.