DEV Community

Cover image for PawArt | Letting a Dog Help Create Its Own Portrait
Mir Shah
Mir Shah Subscriber

Posted on

PawArt | Letting a Dog Help Create Its Own Portrait

DEV Weekend Challenge: Dog Days Edition Submission 🐕

This is a submission for Weekend Challenge: Dog Days Edition

PawArt cover artwork



PawArt


Every bark becomes art.


Your dog. Their bark. Their masterpiece.

Most pet art begins with a human choosing the colors, the mood, and the style. But dogs already bring a personality of their own. Their voices can be bright, gentle, restless, or wonderfully dramatic. PawArt begins there, by listening to the dog and letting the bark guide the canvas.

What I Built

The simple idea that started PawArt

I wanted to answer one playful question:

What would a bark look like?

PawArt is a mobile app that turns a dog's photo and a few seconds of barking into a unique portrait. I like to explain it this way: the photo tells PawArt who to paint, while the bark helps decide how to paint them.

PHOTO
Meet the artist
BARK
Hear their voice
GEMINI
Shape the style
PAWART
Reveal the portrait

A lively bark might inspire bright color, bold contrast, and restless brushwork. A softer recording might create deeper tones, gentle texture, and more breathing room in the composition. It means the dog has a real influence on the final result instead of simply appearing inside a style someone else picked.

The result screen reveals the bark fingerprint behind the piece, including energy, pitch, rhythm, intensity, bark count, and pauses. The original bark can also be replayed beside the artwork it helped create.

One thing that mattered to me: PawArt does not claim to translate a dog's thoughts or feelings. It only uses measurable sound characteristics as creative controls for the artwork.

Demo

The complete experience in sixty seconds

One bark becomes a portrait in one minute

Watch the demo on YouTube

The recording studio and the finished masterpiece.

A small note from behind the demo

My dog is at home with my family while I am currently staying in a hostel. I used a saved photo and played a recorded bark from another phone. The app still captured that sound and sent it through the real analysis and generation flow shown in the video.

PawArt mobile experience showing bark recording and generated artwork screens

How I Built It

What happens after the record button is pressed

I wanted the app to feel easy even though quite a lot happens behind it. Once the user taps Create PawArt, the process moves through three small stages.

01 · Capture

I built the mobile app with Expo, React Native, and TypeScript. The user chooses a dog photo, records a short bark, and sees a live waveform move with the sound. I spent a lot of time on this part because recording audio can easily feel like filling out a form. I wanted it to feel more like giving the dog a tiny studio session.

The photo and recording then move into private Supabase Storage buckets. No Google credential ever enters the mobile app.

02 · Listen

A Supabase Edge Function securely sends both the photo and audio to Gemini 3.7 Flash through Google's official API.

Gemini looks for measurable qualities such as energy, pitch, rhythm, intensity, bark count, and pauses. PawArt then turns those qualities into a visual language.

HIGH ENERGY
Dynamic composition
BRIGHT PITCH
Luminous palette
RAPID RHYTHM
Active brushwork
STRONG SOUND
Bold contrast

> Style: Expressive impressionism
> Palette: Warm gold, orange, and crimson
> Composition: Energetic and alive
> Brushwork: Sweeping and bold

I chose a structured response because I did not want the generated image to feel random. It lets the app show how the voice influenced the canvas, and it also keeps each stage predictable enough to build around.

03 · Paint

The original photo and the new art direction are passed to Gemini 3.1 Flash Image, also known as Nano Banana 2.

The prompt asks the model to preserve the dog's recognizable eyes, ears, muzzle, coat colors, markings, and proportions. The bark still controls the visual treatment, so a different recording creates a meaningfully different portrait. Getting this balance right was the most interesting part of the build.

One dog. A different bark. A different canvas.

Why I chose Supabase

I used Supabase because it gave me one place for the files, database, and server logic. More importantly, it meant the Google API key could stay on the server instead of ending up inside the Expo app.

STORAGE
Private photos, audio, and art
EDGE FUNCTION
Secure Google AI requests
POSTGRES
Bark and artwork metadata
SIGNED URLS
Temporary access to results

The repository includes the database migration, private Storage buckets, file restrictions, Row Level Security policies, secrets configuration, and Edge Function deployment steps. The complete walkthrough is available in the Supabase setup guide inside the README.

Code

Run it, inspect it, or build on top of it

PawArt is open source.


The repository contains the Expo app, Supabase backend, database migration, and Google AI Edge Function.

PawArt app icon

PawArt

Every bark becomes art.

Your dog. Their bark. Their masterpiece.

Expo React Native Supabase Google Gemini

Built for the DEV Weekend Challenge: Dog Days Edition
Competing for Best Use of Google AI


What is PawArt?

PawArt is a mobile creative studio that turns a dog's photo and a short bark recording into a recognizable, one-of-a-kind portrait.

The bark is not treated as a secret language. PawArt measures acoustic characteristics—energy, pitch, rhythm, intensity, bark count, pauses, and duration—and uses them as creative controls for palette, composition, contrast, and brushwork.

PawArt never claims to translate a dog's thoughts, needs, intentions, or emotions. Sound characteristics guide the artwork only.

The experience

Step What happens
01 · Add a photo Take a clear dog photo or choose one from the gallery.
02 · Record the bark Capture 3–10 seconds with a live microphone waveform.
03 · Read the sound Gemini analyzes measurable acoustic characteristics.
04 · Find the art

Want to create your own PawArt?


Everything needed to run, understand, and extend the project is waiting in the repository.

OPEN THE SOURCE

Explore the complete PawArt code
BUILD IT YOURSELF

Follow the full Supabase guide
SEE HOW IT IS SECURED

Understand secrets and private files

Prize Categories

Best Use of Google AI

One model listens. One model paints.

Gemini 3.7 Flash

Studies the photo and bark, then writes the creative direction.

Nano Banana 2

Preserves the dog and turns that direction into the final portrait.

Google AI is at the center of the idea, rather than being something I added just to qualify for the category. Gemini turns an ordinary recording into useful art direction. Nano Banana 2 turns that direction into an image while keeping the actual dog recognizable. Together, they connect the dog's voice to the finished canvas.


Every dog already has a voice.


PawArt gives that voice a canvas.

I built PawArt because the small sounds we hear every day can hold memories. A familiar bark is part of a dog's personality and part of the feeling of having them nearby. Turning it into art feels more personal to me than adding a filter to a photo. The final portrait is shaped by both how the dog looks and how they sound.

PawArt started as a fun weekend idea, but somewhere during the build it began to feel like a small way of saving a moment with a companion. If someone uses it, smiles at the result, and immediately wants to try another bark, then it has done exactly what I hoped it would do.



Your dog. Their bark. Their masterpiece.



Every bark becomes art.

Top comments (1)

Collapse
 
mirshah12 profile image
Mir Shah

i tried to build something genuine and fun in this short time, hope u enjoyed and i appreciate your valuable thoughts! 💖