Inspiration

Every child draws. Stick figures on napkins, crayon monsters on construction paper, pencil heroes in the margins of homework papers. These drawings are tiny windows into a child's imagination. But most of them end up lost in a drawer or thrown away. We wanted to build a place where these drawings can be preserved forever, and where they can come alive. Ding Dong Doodle was born from the belief that a child's creativity deserves more than a refrigerator magnet. It deserves a whole world. Plus, children love to come up with stories for their toys, plushies, or drawings. A kid's character can be brave, or messy, or learning to share. The stories write themselves around who they are, to teach them lessons about the world!

(The name was inspired by the character Bing Bong from inside-out)

What it does

Ding Dong Doodle is a creative platform where kids can bring their hand-drawn characters to life, interact with them, and watch them grow over time.

  • Draw or Upload: Children can sketch directly in the browser or upload photos of their paper drawings.
  • Create Islands: Each child can build their own island world where their characters live, with customizable environments and scenery. Islands can be navigated through via the minimap as well.
  • Animate Characters: Drawings are brought to life with simple animations: characters can walk, jump, wave, and explore their islands.
  • Give Personalities: Parents and kids assign personality traits to characters (brave, silly, tidy, adventurous, etc), which shapes how they behave and how stories feature them.
  • Draw Evolutions: Characters can grow. Kids can draw new versions of their characters over the months and years, creating a visual timeline of their artistic development.
  • Generate Stories: Using the characters' personalities and traits, the platform generates personalized, illustrated stories starring the child's own creations. A tidy character might star in a story about cleaning their room; a brave one might go on a quest.

How we built it

70% of the code was vibe coded using Claude.

  • Frontend: Next.js with a canvas-based drawing tool for freehand sketching (inspired by skribbl.io) and character upload/tracing.
  • Animation Engine: Custom sprite-based animation system that maps simple character skeletons to walking/movement cycles.
  • AI Story Generation: We feed character names, personality traits, and a story theme to Cohere (command-a-reasoning-08-2025), and it generates age-appropriate, educational short stories featuring the child's characters. The stories are overseen by the parents entirely, supporting safety.
  • Backend: Node.js + MongoDB for storing drawings, character data, and story history across sessions.

Challenges we ran into

  • Our initial idea for animating the drawings was to pass the drawing into SAM (separate anything model) and break it down into parts (limbs and torso) so we can move it with template animations. However, all models struggled to separate the drawing into parts with accuracy, even if it was well-drawn. It ended up producing hilarious abominations such as the one shown below in the media section. This suggested the model would struggle even more on rougher drawings expected from children. So after hours of experimentation, we settled on having the user (parent) manually assign skeletons to the drawings, and used CSS transform to make parts move.

  • We spent hours trying to connect the frontend to the backend. Many features had to be rewritten (animation, etc) as the backend team was experimenting in python scripts which imported libraries not compatible with next.js. We ended up having to deploy the python script separately and use it as another API.

Accomplishments that we're proud of

  • A child can go from blank canvas to animated character living on a custom island in under 5 minutes.
  • The personality-driven story engine produces stories that feel genuinely tailored.
  • The evolution timeline is unexpectedly emotional seeing a character drawn at age 5 next to one drawn at age 8 is a powerful reminder of how much children grow.
  • The slight jankiness of the animation is HILARIOUS.
  • We built something that parents and children both want to use together, which was one of our core goals.

What we learned

  • We need to plan really in depth, especially for the endpoints, to make connecting the backend to the frontend as smooth as possible.
  • Sleep is (not) optional

What's next for Ding Dong Doodle

  • Voice-narrated stories read aloud by a warm, friendly AI voice.
  • Multiplayer islands kids can visit a friend's island and have their characters interact.
  • A set of drawing tutorials.
  • A more child-friendly tutorial.
  • A Background soundtrack.

Built With

  • claude
  • cohere
  • next.js
  • openai
+ 3 more
Share this project:

Updates