What I Learned Building a Random Animal Generator
Written by Fredd
What is a Random Animal Generator?
Try it here: Random Animal Generator
At Internet Garden we don't only want to plant small startup seeds to see which ones will grow, but we thought it might be a cute idea to include animals as well. Not only plants belong in a garden; animals do too, right?
So, on this beautiful spring weekend, I built a Random Animal Generator: it is a simple, free tool for children and anyone curious about animals. The idea was straightforward: press a button, and a new random animal appears, complete with a picture, name, and fun fact. If you liked the previous animal, you can also go back.
What I Learned Building It
1. The Frontend Was Easy
For the frontend, I used Next.js, TypeScript, and Tailwind CSS. With the help of Claude Sonnet, I got a working version in about 10–20 minutes. To me, frontend work is simple and a lot of fun.
2. Getting the Animal Data Was Hard
This is where things got tricky. I needed three things for each animal: 1. A name, 2. A fun fact, 3. A picture.
I thought this data would be easy to find, but after searching through databases and APIs, I realized: there was no good free source that had all three together.
So, I had to build my own dataset from scratch.
3. Scraping and Generating Data
Names: I scraped a list of around 1,000 animal names from various sources. Then, I used ChatGPT to generate the fun facts, which I manually verified for accuracy.
Images: This was by far the hardest part. I initially tried using Unsplash's API to find images, but this led to huge issues with accuracy.
For example:
Searching for "glass frog" gave me a frog on a piece of glass—not the actual species.
"Balinese" returned pictures of Balinese people, not the cat breed.
Searching for "pink salmon" often showed cooked salmon on a plate or a fish being held by a human.
This made me realize how hard it will be to get clean, structured data at scale. I often feel that AI and search engines often misinterpret implicit meanings and contexts, which can lead to low data quality.
4. Cleaning and Improving Data is Tedious
Fixing all these errors took most of my time. About 100x more than building the frontend itself. I had to manually check and delete hundreds of incorrect images. This was tedious but also eye-opening work, as I realized that likely all datasets have built-in biases. For example, most fish images were either caught by fishermen or cooked in a pan, as this is naturally the place where fish and humans come in contact the most. And sometimes they want to capture this with a camera. This distorts how an AI or any computer would interpret "fish."
High data quality seems as if it is a major challenge for AI models and generally databases. Creating a scalable, high-quality dataset without manual work is incredibly difficult.
Final Thoughts
In the end, I hosted the cleaned images on my own server and launched the Random Animal Generator. It was a fun side project, but clearly shows how high data quality is a massive challenge in AI and general any database. If I struggled this much for a simple project, imagine the challenges companies face with even bigger datasets. I will look how they are fixing it. For now, the Random Animal Generator is live and free for anyone to use. Would love to hear your feedback on this :-)! I can also add things. Just let me know.