Inspiration: Zenpond was built at GizzHack7, our first hackathon—and the duck theme instantly gave us an idea. We wanted to make something peaceful and visually relaxing, like a lofi-inspired pond scene with floating ducks and a cozy vibe. But we also wanted to add a twist—something unexpected but still chill. That’s where capybaras came in. They’re calm, lovable, and just strange enough to make things interesting. So we created a space where you upload a selfie, and the world slowly shifts… capybara by capybara.

What it does: Zenpond is an interactive web experience where users can upload a selfie or JPG image. That photo is processed by an AI pipeline that transforms the person in the image into a capybara. Once the transformation is complete, the new image is displayed on screen, and one of the ducks in the pond quietly becomes a capybara—changing the environment as users interact. Lofi music also plays in the background to enhance the calm, relaxing atmosphere.

How we built it: The frontend was built with HTML, CSS, and JavaScript, with layered visuals to create a peaceful animated pond. File uploads are handled using a standard HTML , which triggers a fetch request to send the image to the Flask backend. The backend uses Flask to run our AI pipeline written in Python, which includes:

GroundingDINO for initial face detection

Manual prompt-guided Grounding SAM for precise face segmentation

Stable Diffusion for capybara transformation of the masked regions. The backend uses Flask to run our AI pipeline written in python, which includes SAM for object segmentation and masking through manual point prompting, GroundingDINO for object detection- generating bounding box around the object, and Stable Diffusion for turning people into capybaras. The result is returned as a base64-encoded image which is converted to imageUrl on JS and displayed in the browser. The frontend then swaps one duck in the pond for a capybara.

Challenges we ran into: We ran into a lot. Docker wouldn’t compile the environment with all the model dependencies, so we pivoted to running everything locally. Getting GroundingDINO and SAM to work in tandem—alongside Stable Diffusion for object masking—required a lot of debugging. For now, they operate independently, but aligning their outputs smoothly remains a key focus. On the frontend side, getting the duck animations and capybara swaps to feel natural and keep the chill vibe took tuning. The HTML image upload and handling also involved some trial-and-error to make it clean and functional. Flask also posed challenges, particularly in managing requests and returning image data without refreshing the browser.

Accomplishments that we're proud of: We’re proud that we pulled off a full pipeline—from frontend upload to backend AI to live scene updates. The pond feels peaceful, the transformation works, and the capybara additions bring a smile. We also collaborated effectively: Kevin prototyped the AI pipeline, Ammar improved it and built the GUI, and we tag-teamed frontend/backend integration.

What we learned: We learned how to combine AI models with interactive frontend design. Specifically, we gained experience using GroundingDINO, SAM, and Stable Diffusion, serving models with Flask, and building clean UI with HTML, CSS, and JavaScript. We also got a better understanding of how AI can be embedded into playful, accessible experiences—not just technical ones.

What's next for Zenpond: Next, we’re working on creating a Docker image to containerize everything and streamline setup. We plan to host Zenpond live at zenpond.tech, so anyone can experience the pond, upload a photo, and slowly turn ducks into capybaras—one peaceful transformation at a time.

Built With

Share this project:

Updates