Art factory App is an end-to-end AI-orchestrated print-on-demand business that automates the entire workflow from AI image generation to published Etsy listings—without ongoing manual intervention. Designed as both a business venture and a research platform for agentic AI systems, it demonstrates how multiple AI and commerce APIs can be integrated into a coherent, self-operating pipeline.
The core insight: Instead of treating AI as a tool for individual tasks, treat it as an orchestrator that coordinates across specialized services. Claude handles semantic understanding and decision-making; specialized APIs handle execution. The system generates gaming wall art, automatically upscales to print quality, writes SEO-optimized Etsy listings using vision analysis, and publishes directly to Etsy—all triggered by a single user action in the Art Factory web application.

The Four-Stage Agentic Pipeline
① Prompt Engine
User defines a product concept (e.g., "cyberpunk gaming aesthetic," "minimalist NFT art"). The system constructs a detailed, multi-part prompt that feeds into:
→ fal.ai (Flux Pro for high-quality generation)
② Image Generation & Curation
Flux Pro generates 4–6 candidate images. The system automatically curates using quality heuristics and stores the best candidates. User can trigger additional generations or iterate the prompt:
→ fal.ai Flux Pro | SeedVR (4× upscaling to 4K for print) | Firebase Storage
③ Listing Generation & Enrichment
Claude Vision analyzes the generated image and writes a complete Etsy listing (title, description, tags) optimized for Etsy's LLM-based semantic search. Uses structured prompt architecture with canonical instruction files (LISTING-AI.md) trained on Etsy research:
→ Claude API (Vision + Text) | Semantic tag strategy
④ Automated Publishing
Final image and listing metadata sent to Gelato API to create a print-on-demand product, which is then published to Etsy via OAuth 2.0 integration. Job status monitored in real-time:
→ Gelato API (POD + Etsy bridge) | Etsy API (OAuth 2.0) | Firebase Cloud Functions (async orchestration)

AI's Role: Beyond Task Automation
Claude is not just a content generator. It serves three critical functions:
1. Semantic Understanding
Claude analyzes the visual content of generated images—composition, color, mood, subject matter—and maps these to Etsy's semantic search taxonomy. This isn't rule-based tagging; it's reasoned, context-aware categorization.
2. Instruction Architecture
The system operates on a canonical instruction file (LISTING-AI.md) that governs how Claude should write titles, descriptions, and tags. This file is version-controlled, testable, and iterable—allowing the entire "Claude behavior" to be refined as we learn what works on Etsy.
3. Decision Curation
Claude evaluates image quality, determines if a listing is ready to publish, and flags edge cases (e.g., images that don't meet print quality standards). This prevents automated publishing of substandard products.

Technical Stack & Architecture
Frontend & Application
React + Vite – Web application UI
Tailwind CSS v4 – Styling
Real-time job status via Firebase onSnapshot()
Async job orchestration pattern (Firestore documents as state machines)
Backend & Orchestration
Firebase – Firestore (job documents), Cloud Functions (triggers), Storage (image hosting)
Job state lifecycle: pending → generating → curating → listing → publishing → live
Error handling & blind spot monitoring (e.g., Gelato → Etsy leg failures)
AI & Content Generation
Claude Opus – Vision + listing generation
fal.ai – Flux Pro (high-quality image generation)
SeedVR – 4× upscaling to print-ready (4K)
Structured prompt architecture (system prompt + canonical LISTING-AI.md)
Commerce & Integration
Gelato API – Print-on-demand (frames, mugs, apparel)
Etsy API – OAuth 2.0, listing creation, digital downloads
Multi-store support (The Hoodie Gamer + Shop A Mug)
Key Engineering Decisions
Async Job Orchestration Pattern: Instead of request-response, the system uses Firestore job documents as state machines. A Cloud Function listens for state changes and triggers the next stage. This decouples the UI from long-running processes (image generation can take 30+ seconds) and allows natural monitoring and retry logic.
Prompt Engineering as Version Control:
All Claude behavior is governed by a canonical LISTING-AI.md file stored in the repo. This makes prompt strategy testable, iterable, and documentable—not a black box. When Etsy's search behavior changes, we update the instruction file, not individual prompts.
Blind Spot Identification & Monitoring: Early testing revealed the Gelato → Etsy publishing leg could fail silently (Gelato published to Etsy successfully, but the system didn't verify). This led to explicit monitoring and retry logic at that stage. Strategic thinking about where automation breaks down is as important as building the automation itself.
Results & Metrics
120+
Active Listings
4
Stages Automated
5
External APIs Integrated
What This Demonstrates
This project is a complete end-to-end ownership of an agentic AI system—from business process analysis and tool selection, through architecture design and prompt engineering, to governance (monitoring, failure detection, quality gates).
It shows:
AI literacy and prompt architecture at scale (not one-off prompts)
API orchestration and async workflow design
Non-deterministic process management (handling variability in image generation, API responses)
Judgment about when automation adds value and when it doesn't
Strategic thinking about business process optimization, not just technical implementation
|