Transform Literature into
Graphic Novels
An open-source AI pipeline that generates 100+ page graphic novels with consistent characters, dynamic layouts, and proper speech bubbles. Batch-first architecture designed for long-form text adaptation.
Python Gemini 2M Context OpenAI gpt-image-1 7-Pass Pipeline PDF / EPUB Export MIT License
Sample Output
20,000 Leagues Under the Sea by Jules Verne — Botanical Illustration style — 10 pages
Maintaining consistent diving gear and period-accurate equipment across underwater scenes remains one of the harder consistency challenges.
How It Works
Three steps from plain text to a complete graphic novel.
2
Customize
Choose from 14 art styles (watercolor, manga, noir, botanical...), 14 narrative tones, page count, and era constraints.
3
Generate
The pipeline writes scripts, generates character references, illustrates panels, composes pages, and exports to PDF/EPUB.
Architecture
A 3-agent pipeline with a 7-pass scripting enrichment system.
Key Handoffs Between Passes
→
Beat Analysis → Director: Visual potential scores inform page allocation and splash decisions
→
Adaptation Filter → Director: Essential/condensable guidance shapes pacing
→
Character Arcs → Scriptwriter: Voice profiles ensure dialogue consistency
→
Blueprint → Scriptwriter: Adjacent page context (prev/next) for continuity
Art Styles & Tones
14 art styles with cinematic prompt fragments, plus 14 narrative tones.
Art Styles
Lush Watercolor Validated
Soft color bleeds, visible paper texture, ethereal lighting, dreamlike quality
Classic Comic Book Validated
Bold outlines, flat colors, Ben-Day dots, dynamic poses, classic 4-color printing aesthetic
Ligne Claire Validated
Uniform line weight, flat colors, clean precise linework, Hergé/Moebius influence
Manga / Anime Validated
Manga panel conventions, clean black linework, dynamic angles, expressive eyes, speed lines
Gritty Noir Validated
Heavy shadows, high contrast, limited palette, chiaroscuro lighting, Frank Miller influence
Botanical Illustration Validated
Precise detail, scientific accuracy, natural color palette, fine line work, naturalist style
Ukiyo-e Woodblock Experimental
Flat areas of color, bold outlines, woodblock print texture, Japanese composition
Cyberpunk Neon Experimental
Neon lighting, dark backgrounds, holographic effects, rain-slicked surfaces
Art Nouveau Experimental
Flowing organic lines, decorative borders, natural motifs, Mucha-inspired
Indian Miniature Experimental
Flat perspective, rich colors, gold detailing, intricate patterns
Vintage Pulp Experimental
Dramatic lighting, saturated colors, action-oriented composition, retro aesthetic
Sketch / Pencil Experimental
Graphite texture, cross-hatching, visible pencil strokes, tonal gradation
Minimalist Line Art Experimental
Single weight lines, minimal detail, negative space, clean composition
Chiaroscuro Experimental
Dramatic light-dark contrast, Caravaggio-inspired, volumetric lighting
Narrative Tones
Heroic Suspenseful Melancholic Whimsical Dark Fantasy Educational Philosophical Satirical Romantic Contemplative Tragic Noir Detective Cosmic Horror Gothic
Paths Explored: Gemini vs OpenAI
Two backends, different tradeoffs. Here's an honest breakdown with real numbers.
Why Dual Backends?
Image generation APIs have outages, quota limits, and regional availability issues.
During development, Gemini 3 Pro Image was often unavailable outside us-central1.
Having OpenAI as a fallback meant production runs could continue regardless.
The factory pattern keeps the switching cost at zero — one config change, no code changes.
Repository Structure
17K+ lines of Python across a clean, modular architecture.
illustrative/
agents/ # Core pipeline agents
scripting/ # 7-pass enrichment pipeline
passes/ # Individual pass implementations
openai/ # OpenAI alternative backend
panel_agent.py # Panel image generation
reference_agent.py # Character reference sheets
compositor_agent.py # Page layout + text overlay
layout_agent.py # Dynamic panel grid generation
export_agent.py # PDF/EPUB export
validators/ # Quality assurance
pre_validators.py # Prompt validation (saves tokens)
post_validators.py # Output quality checking
consistency.py # Character consistency audit
composition.py # Bubble placement, cropping
ui/ # Streamlit interface
pages/ # Home, auth, dashboard, generate
models/ # SQLAlchemy ORM models
migrations/ # Alembic database migrations
storage/ # S3/bucket storage utilities
tests/ # 12 test files, 4K+ lines
app.py # Streamlit entry point
production_run.py # CLI for full production runs
config.py # Centralized configuration
cost_calculator.py # Pay-per-use pricing engine
utils.py # Retry logic, rate limiting, manifest
Getting Started
Clone, configure, and generate your first graphic novel.