Skip to content

About

No description, website, or topics provided.

Resources

Stars

11 stars

Watchers

0 watching

Forks

Latest commit

 

History

93 Commits

Folders and files

Repository files navigation

Claude Draws

Note: Claude Draws is no longer accepting new submissions. The gallery remains available to browse all the artworks that were created.

An automated art project where Claude for Chrome created crowdsourced illustrations using Kid Pix, sourced from user submissions at claudedraws.xyz.

Claude Draws creating a beach scene in Kid Pix

🎨 Gallery: claudedraws.xyz

What is Claude Draws?

Claude Draws was a fully automated art pipeline that:

  1. Accepted Submissions - Users submitted art requests via a web form
  2. Created Art - Used browser automation to have Claude for Chrome draw in Kid Pix (a nostalgic 90s paint program)
  3. Processed & Published - Automatically extracted metadata, uploaded images to R2 storage, and saved metadata to D1 database
  4. Notified Users - Sent email notifications when artworks were complete (if email provided)

The entire process ran autonomously - from request to published artwork - with no manual intervention required.

How It Works

The Pipeline

Web Form Submission → Cloudflare D1 Database → Browser Automation →
  → Claude Draws in Kid Pix → Temporal Workflow →
  → BAML Metadata Extraction → Cloudflare R2 Storage →
  → D1 Metadata Insert → Email Notification (optional)

Technology Stack

Frontend

Backend

Art Tool

  • Kid Pix - Open-source JavaScript recreation of the classic 90s drawing program

Project Structure

This is a monorepo containing both the Python backend and SvelteKit frontend:

claude-draws/
├── backend/             # Python backend services
│   ├── claudedraw/     # CLI for browser automation
│   ├── workflows/      # Temporal workflows for processing
│   ├── worker/         # Temporal worker process
│   ├── baml_src/       # BAML metadata extraction configs
│   └── pyproject.toml  # Python dependencies
├── gallery/            # SvelteKit static site
├── .chrome-data/       # Chrome profile for automation
├── downloads/          # Temporary artwork storage
├── docs/               # Architecture documentation
└── docker-compose.yml  # Orchestrates all services

Key Features

  • Fully Automated - No manual steps from request to publication
  • Reliable - Temporal workflows provide automatic retries and error recovery
  • Scalable - Static site hosted on Cloudflare's global CDN
  • Cost-Effective - R2 storage with zero egress fees
  • Open Source - MIT licensed, contributions welcome

Development Setup

TODO: Complete local development setup instructions

For now, see CLAUDE.md for detailed technical documentation and development commands.

Gallery

Visit claudedraws.xyz to browse all the artworks Claude created!

Each artwork includes:

  • The finished Kid Pix illustration
  • Claude's title for the piece
  • Claude's artist statement explaining the creative choices
  • The original user prompt

Architecture Highlights

Browser Automation

Uses Playwright with Chrome DevTools Protocol (CDP) to control Claude for Chrome extension, combined with OS-level keyboard automation to trigger browser shortcuts.

Workflow Orchestration

Temporal handles the complex multi-step process of extracting metadata, uploading images to R2, and inserting metadata into D1 - all with automatic retries and full visibility.

Metadata Extraction

BAML (Bounded Automation Markup Language) reliably parses Claude's unstructured HTML responses to extract artwork titles and artist statements.

Dynamic Gallery with D1

SvelteKit uses SSR-on-demand to render pages with fresh data from D1 database. New artworks appear immediately in the gallery without requiring a rebuild or deployment.

License

MIT - see LICENSE for details

Credits

  • Kid Pix - Original software by Craig Hickman (1989)
  • Kid Pix JS - Open-source recreation at kidpix.app
  • Claude - Anthropic's AI assistant powering the artwork creation

Note: This was an experimental art project demonstrating AI automation capabilities. The artwork was generated by Claude for Chrome using browser automation, not by Claude's API.

About

No description, website, or topics provided.

Resources

Stars

11 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages