doc: update after adding placeholders guide
This commit is contained in:
parent
5b0bfa56b9
commit
0a7697c2dd
164
ROADMAP.md
164
ROADMAP.md
|
|
@ -16,10 +16,10 @@
|
|||
## 🎯 Current Status
|
||||
|
||||
**Phase:** Pre-launch / Full Stack Deployed
|
||||
**Sprint:** Placeholder SEO Sprint ⭐ ACTIVE
|
||||
**Sprint:** Placeholder SEO Sprint ⭐ ACTIVE (Track A remaining)
|
||||
**Focus:** Capture 31K+ monthly placeholder image searches
|
||||
**Next Milestone:** Landing page `/placeholder-images` + Docs section live
|
||||
**Last Updated:** January 2, 2026
|
||||
**Next Task:** Create landing page `/placeholder-images`
|
||||
**Last Updated:** January 5, 2026
|
||||
|
||||
**See:** [19-placeholder-seo-sprint.md](execution/19-placeholder-seo-sprint.md)
|
||||
|
||||
|
|
@ -43,70 +43,67 @@
|
|||
- [x] **Master API key generated**
|
||||
- [x] **Caddy reverse proxy configured** for all endpoints
|
||||
- [x] **DNS records added** (api, cdn, storage subdomains)
|
||||
- [ ] **Full API testing** (generation, upload, CDN URLs) — planned by Dec 27
|
||||
- [ ] **Full API testing** (generation, upload, CDN URLs) — planned
|
||||
|
||||
**See:** [18-production-infrastructure.md](execution/18-production-infrastructure.md)
|
||||
|
||||
### DataForSEO Integration (Dec 26, 2025) ⭐ NEW
|
||||
### DataForSEO Integration (Dec 26, 2025)
|
||||
- [x] **DataForSEO MCP Server connected** to Claude Code
|
||||
- [x] **First keyword research completed** — "placeholder images" cluster
|
||||
- [x] **Research methodology validated** — $0.14 per full research cycle
|
||||
- [x] **Content opportunities identified** — 5 articles with clear targets
|
||||
|
||||
**See:** [research/seo-keyword-research-placeholder-images.md](research/seo-keyword-research-placeholder-images.md)
|
||||
|
||||
### Project Knowledge Integration (Dec 29-30, 2025) ⭐ NEW
|
||||
### Project Knowledge Integration (Dec 29-30, 2025)
|
||||
- [x] **BANATIE-CONTENT-INTEGRATION.md** created in Project Knowledge
|
||||
- Navigation map for banatie-content repository
|
||||
- Multi-agent system (9 agents), content pipeline, research structure
|
||||
- Strategic input channels defined (inbox, Perplexity threads)
|
||||
- [x] **BANATIE-SERVICE-INTEGRATION.md** created in Project Knowledge
|
||||
- Navigation map for banatie-service technical repository
|
||||
- Monorepo structure, API docs paths, landing components
|
||||
- Production URLs, deployment commands, key differentiators
|
||||
|
||||
**Purpose:** Enable @men to find authoritative information across repositories during strategy sessions.
|
||||
---
|
||||
|
||||
### Placeholder Niche Discovery (Jan 2, 2026) ⭐ NEW
|
||||
- [x] **Deep dive research completed** — 31K+ monthly searches discovered
|
||||
## ✅ Completed: Placeholder SEO Sprint — Tracks B+C (Jan 2-5, 2026)
|
||||
|
||||
### Research Findings (Jan 2, 2026)
|
||||
- [x] **Deep dive completed** — 31K+ monthly searches discovered
|
||||
- [x] **Zero-KD keywords identified** — 10+ keywords with KD 0-5
|
||||
- [x] **Direct user validation found** — r/ClaudeAI quote about MCP for placeholders
|
||||
- [x] **Execution plan created** — 19-placeholder-seo-sprint.md
|
||||
|
||||
**See:** [19-placeholder-seo-sprint.md](execution/19-placeholder-seo-sprint.md)
|
||||
### Track C: Homepage Quick Wins ✅ COMPLETE
|
||||
- [x] **Keywords in metadata** — added placeholder-related keywords
|
||||
- [x] **PromptUrlsSection** — updated to mention placeholders first
|
||||
|
||||
### Known Issues (Minor)
|
||||
- [ ] Healthcheck: containers show "unhealthy" (no curl in images)
|
||||
- [ ] Cache permission: landing warns about `.next/cache`
|
||||
### Track B: Docs Section ✅ COMPLETE
|
||||
- [x] **Live URLs docs enhanced** — added placeholder section with examples
|
||||
- [x] **Guides section created** — `/docs/guides/`
|
||||
- [x] **Placeholder Images guide** — `/docs/guides/placeholder-images/`
|
||||
- Templates (general, photorealistic, illustration, etc.)
|
||||
- Dark mode and color control
|
||||
- Common use cases (avatars, heroes, products)
|
||||
- File-based workflow
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Active Sprint: Placeholder SEO Sprint
|
||||
## 🔄 Active: Placeholder SEO Sprint — Track A
|
||||
|
||||
### Track A: Landing Page `/placeholder-images` (Priority 1)
|
||||
- [ ] Verify Live URLs support `?width=X&height=Y` parameters
|
||||
- [ ] Create MVP landing page (text-only, Hero + How It Works + Code + CTA)
|
||||
- [ ] Deploy and submit to GSC
|
||||
- [ ] Enhance with visuals and interactive size grid
|
||||
### Track A: Landing Page `/placeholder-images` ⏳ TODO
|
||||
|
||||
**Target:** 14,800+ monthly searches (KD 17-18)
|
||||
**Goal:** Capture 14,800+ monthly searches for core "placeholder image" keyword
|
||||
|
||||
### Track B: Docs Section `/docs/placeholders/` (Priority 2)
|
||||
- [ ] Create `/docs/placeholders/` overview page
|
||||
- [ ] Create `/docs/placeholders/dark-mode/` (4,400 vol, KD 2) ← HIGHEST PRIORITY
|
||||
- [ ] Create `/docs/placeholders/profiles/` (720 vol, KD 0)
|
||||
- [ ] Create `/docs/placeholders/sizes/` (1,000+ vol combined)
|
||||
**Target Keywords:**
|
||||
| Keyword | Volume | KD |
|
||||
|---------|--------|-----|
|
||||
| placeholder image | 14,800 | 18 |
|
||||
| image placeholder | 14,800 | 17 |
|
||||
| ai placeholder images | — | — |
|
||||
| placeholder image generator | 480 | 32 |
|
||||
|
||||
**Target:** Zero-KD keywords for quick wins
|
||||
**Page Structure:**
|
||||
- Hero with instant demo
|
||||
- How It Works (3 steps)
|
||||
- Interactive size grid
|
||||
- Comparison table (vs placehold.co, picsum)
|
||||
- Production bridge CTA
|
||||
|
||||
### Track C: Homepage Quick Wins (Immediate)
|
||||
- [ ] Add placeholder keywords to homepage metadata
|
||||
- [ ] Update PromptUrlsSection subtitle to mention placeholders
|
||||
- [ ] Add internal link to `/placeholder-images`
|
||||
|
||||
### Paused (Resume After Sprint)
|
||||
- [ ] ICP interview preparation
|
||||
- [ ] Content marketing articles for dev.to
|
||||
**File:** `apps/landing/src/app/(landings)/placeholder-images/page.tsx`
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -115,40 +112,25 @@
|
|||
| URL | Purpose | Status |
|
||||
|-----|---------|--------|
|
||||
| https://banatie.app/ | Landing page | ✅ Live |
|
||||
| https://api.banatie.app/ | API service | 🔄 Deployed (testing pending) |
|
||||
| https://cdn.banatie.app/ | Image CDN | 🔄 Deployed (testing pending) |
|
||||
| https://storage.banatie.app/ | MinIO Console | 🔄 Deployed (testing pending) |
|
||||
| https://banatie.app/docs/guides/placeholder-images | Placeholder guide | ✅ Live |
|
||||
| https://api.banatie.app/ | API service | 🔄 Deployed |
|
||||
| https://cdn.banatie.app/ | Image CDN | 🔄 Deployed |
|
||||
|
||||
---
|
||||
|
||||
## 📅 Upcoming: Content Marketing Sprint (January 2025)
|
||||
## 📅 Next Up: Content Marketing Sprint (After Placeholder Landing)
|
||||
|
||||
**Duration:** 2 weeks intensive
|
||||
**Goal:** Establish thought leadership, drive organic traffic
|
||||
### SEO-Driven Content (from keyword research)
|
||||
|
||||
### SEO-Driven Content (from keyword research) ⭐ NEW
|
||||
|
||||
| Priority | Content Type | Target Keyword | Volume | KD | Platform |
|
||||
|----------|--------------|----------------|--------|-----|----------|
|
||||
| 🥇 | Landing page | placeholder images | 14,800 | 32 | banatie.app |
|
||||
| 🥇 | Dev tutorial | placeholder images api | 90 | 12 | dev.to + blog |
|
||||
| 🥈 | Listicle | placeholder image generator | 480 | 32 | dev.to + blog |
|
||||
| 🥈 | Tutorial | image placeholder html | 320 | 34 | blog |
|
||||
| 🥉 | Blog post | random image api | 110 | 17 | blog |
|
||||
|
||||
**See:** [research/seo-keyword-research-placeholder-images.md](research/seo-keyword-research-placeholder-images.md)
|
||||
| Priority | Content Type | Target Keyword | Volume | KD |
|
||||
|----------|--------------|----------------|--------|-----|
|
||||
| 🥇 | Landing page | placeholder images | 14,800 | 18 |
|
||||
| 🥈 | Dev tutorial | placeholder images api | 90 | 12 |
|
||||
| 🥈 | Tutorial | image placeholder html | 320 | 34 |
|
||||
|
||||
### Additional Planned Content
|
||||
- Personal articles (dev.to, LinkedIn): 2-3 pieces
|
||||
- Henry persona articles (dev.to, Hashnode): 4-6 pieces
|
||||
- Nina persona (Instagram, creative): ongoing
|
||||
|
||||
### Platforms
|
||||
- dev.to
|
||||
- Hashnode
|
||||
- daily.dev
|
||||
- LinkedIn
|
||||
- Product Hunt (later)
|
||||
- Henry persona articles: 4-6 pieces
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -178,41 +160,23 @@
|
|||
|
||||
---
|
||||
|
||||
### GATE 3: PMF Validation (Target: Q2-Q3 2025)
|
||||
|
||||
**Success criteria:**
|
||||
- $1-2K MRR achieved
|
||||
- <5% monthly churn
|
||||
- Organic word-of-mouth
|
||||
|
||||
---
|
||||
|
||||
## 📋 Backlog
|
||||
|
||||
### Technical
|
||||
- [ ] Docs page with API examples
|
||||
- [ ] Signup flow automation
|
||||
- [ ] MCP Server implementation
|
||||
- [ ] SDK TypeScript/Python
|
||||
- [ ] CLI tool
|
||||
- [ ] Image transformations
|
||||
|
||||
### Marketing
|
||||
- [ ] Reddit r/cursor launch post
|
||||
- [ ] Discord Cursor community engagement
|
||||
- [ ] Product Hunt launch
|
||||
- [ ] Case studies
|
||||
|
||||
### SEO & Content ⭐ NEW
|
||||
### SEO & Content
|
||||
- [ ] Research additional keyword clusters
|
||||
- [ ] Expand content-system to cover website pages
|
||||
- [ ] Competitor keyword gap analysis (fal.ai, runware.ai)
|
||||
|
||||
### Infrastructure
|
||||
- [ ] Healthcheck fix in Dockerfiles
|
||||
- [ ] Self-hosted Umami migration
|
||||
- [ ] Email service integration
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Success Definitions
|
||||
|
|
@ -220,31 +184,25 @@
|
|||
### Current Phase Success
|
||||
- ✅ Full stack deployed and working
|
||||
- ✅ Landing page live with good SEO
|
||||
- ✅ Keyword research methodology validated ⭐ NEW
|
||||
- ✅ Keyword research methodology validated
|
||||
- ✅ Placeholder docs/guide created
|
||||
- ⏳ Placeholder landing page
|
||||
- ⏳ ICP validated externally
|
||||
- ⏳ First paying customers
|
||||
|
||||
### Q1 2025 Success
|
||||
- $500-1K MRR
|
||||
- 10-20 active users
|
||||
- Clear PMF signals
|
||||
- Top-10 rankings for target keywords ⭐ NEW
|
||||
|
||||
### Q2 2025 Success
|
||||
- $2-3K MRR
|
||||
- Sustainable growth
|
||||
- Content marketing working
|
||||
- Top-10 rankings for target keywords
|
||||
|
||||
---
|
||||
|
||||
**Roadmap Owner:** @men + Oleg
|
||||
**Last Updated:** January 2, 2026
|
||||
**Next Review:** End of Placeholder SEO Sprint (mid-January)
|
||||
**Version:** 4.3 (Placeholder SEO Sprint added Jan 2, 2026)
|
||||
**Last Updated:** January 5, 2026
|
||||
**Next Review:** After placeholder landing page deployment
|
||||
**Version:** 4.4 (Sprint progress updated Jan 5, 2026)
|
||||
|
||||
**Key Documents:**
|
||||
- [19-placeholder-seo-sprint.md](execution/19-placeholder-seo-sprint.md) - Current sprint plan ⭐ ACTIVE
|
||||
- [research/seo-keyword-research-placeholder-images.md](research/seo-keyword-research-placeholder-images.md) - Keyword research
|
||||
- [18-production-infrastructure.md](execution/18-production-infrastructure.md) - Deployment details
|
||||
- [13-competitive-analysis.md](strategy/13-competitive-analysis.md) - Competitive landscape
|
||||
- [14-icp-segmentation-unified.md](strategy/14-icp-segmentation-unified.md) - Unified ICP segments
|
||||
- [19-placeholder-seo-sprint.md](execution/19-placeholder-seo-sprint.md) — Current sprint ⭐
|
||||
- [research/seo-keyword-research-placeholder-images.md](research/seo-keyword-research-placeholder-images.md) — Keyword research
|
||||
- [18-production-infrastructure.md](execution/18-production-infrastructure.md) — Deployment details
|
||||
|
|
|
|||
|
|
@ -1,21 +1,21 @@
|
|||
# Placeholder SEO Sprint
|
||||
|
||||
**Date Created:** January 2, 2026
|
||||
**Status:** Active
|
||||
**Priority:** HIGH — Immediate execution
|
||||
**Status:** Active — Track A remaining
|
||||
**Priority:** HIGH
|
||||
**Owner:** Oleg
|
||||
**Duration:** 2 weeks
|
||||
**Last Updated:** January 5, 2026
|
||||
|
||||
---
|
||||
|
||||
## Context
|
||||
## Sprint Summary
|
||||
|
||||
@spy research uncovered a major SEO opportunity:
|
||||
@spy research uncovered major SEO opportunity:
|
||||
|
||||
| Metric | Value |
|
||||
|--------|-------|
|
||||
| Total search volume | 31,000+/month |
|
||||
| Zero-KD keywords | 10+ keywords, 9K+ searches |
|
||||
| Zero-KD keywords | 10+ keywords (profile, ios, dark mode) |
|
||||
| AI competitors | **ZERO** |
|
||||
| Direct user validation | r/ClaudeAI quote about MCP for placeholders |
|
||||
|
||||
|
|
@ -25,418 +25,147 @@
|
|||
|
||||
---
|
||||
|
||||
## Two Parallel Tracks
|
||||
## Research Key Findings
|
||||
|
||||
### Track A: Landing Page `/placeholder-images` (Primary)
|
||||
### Top Keywords by Priority
|
||||
|
||||
| Keyword | Volume | KD | Status |
|
||||
|---------|--------|-----|--------|
|
||||
| placeholder image | 14,800 | 18 | → Landing page |
|
||||
| image placeholder dark | 4,400 | 2 | ✅ Covered in guide |
|
||||
| app placeholder image | 1,900 | 2 | ✅ Covered in guide |
|
||||
| profile placeholder image | 720 | 0 | ✅ Covered in guide |
|
||||
| placeholder image url | 390 | 21 | ✅ Covered in Live URLs docs |
|
||||
|
||||
### Zero-KD Opportunities (all covered in guide)
|
||||
|
||||
- profile placeholder image — 720 vol, KD 0
|
||||
- ios placeholder image — 590 vol, KD 0
|
||||
- loading image placeholder — 170 vol, KD 0
|
||||
- image placeholder dark — 4,400 vol, KD 2
|
||||
- app placeholder image — 1,900 vol, KD 2
|
||||
|
||||
### Direct User Validation
|
||||
|
||||
From r/ClaudeAI:
|
||||
> "right now my instructions are to just do placeholder image in various sizes... I am wondering if there is an mcp that can create or fetch these images for Claude instead."
|
||||
|
||||
---
|
||||
|
||||
## Execution Status
|
||||
|
||||
### Track A: Landing Page `/placeholder-images` ⏳ TODO
|
||||
|
||||
**Goal:** Capture 14,800+ monthly searches for core placeholder keywords
|
||||
|
||||
**Target Keywords:**
|
||||
- placeholder image (14,800)
|
||||
- image placeholder (14,800)
|
||||
- ai placeholder images
|
||||
- placeholder image generator
|
||||
- placeholder image url
|
||||
|
||||
| Keyword | Volume | KD | Priority |
|
||||
|---------|--------|-----|----------|
|
||||
| placeholder image | 14,800 | 18 | 🥇 |
|
||||
| image placeholder | 14,800 | 17 | 🥇 |
|
||||
| image placeholder dark | 4,400 | 2 | 🥇 |
|
||||
| app placeholder image | 1,900 | 2 | 🥈 |
|
||||
| placeholder image url | 390 | 21 | 🥈 |
|
||||
|
||||
### Track B: Docs Section `/docs/placeholders/` (Secondary)
|
||||
|
||||
**Goal:** Capture long-tail keywords, support conversion journey
|
||||
|
||||
**Target Keywords:**
|
||||
|
||||
| Keyword | Volume | KD | Priority |
|
||||
|---------|--------|-----|----------|
|
||||
| profile placeholder image | 720 | 0 | 🥇 |
|
||||
| ios placeholder image | 590 | 0 | 🥇 |
|
||||
| placeholder image css | 720 | 12 | 🥈 |
|
||||
| placeholder image html | 320 | 26 | 🥈 |
|
||||
|
||||
---
|
||||
|
||||
## Track A: Landing Page
|
||||
|
||||
### Page Structure
|
||||
|
||||
```
|
||||
URL: /placeholder-images
|
||||
Title: "AI Placeholder Images — Generate Contextual Placeholders Instantly"
|
||||
H1: "AI Placeholder Images"
|
||||
```
|
||||
|
||||
**Sections:**
|
||||
|
||||
**Page Structure:**
|
||||
```
|
||||
1. HERO
|
||||
├── H1: "AI Placeholder Images"
|
||||
├── Subhead: "Generate contextual placeholders instantly. Not random stock photos."
|
||||
├── [Interactive demo: prompt input → live result]
|
||||
└── CTA: "Try It Free" / "Get API Key"
|
||||
├── Subhead: "Generate contextual placeholders instantly"
|
||||
└── CTA: "Try It Free"
|
||||
|
||||
2. HOW IT WORKS (3 steps)
|
||||
├── Step 1: Describe what you need
|
||||
├── Step 2: Get instant URL
|
||||
└── Step 3: Use in your code
|
||||
|
||||
3. LIVE URL DEMO
|
||||
├── Code snippet: <img src="...">
|
||||
├── Common sizes selector (avatar, thumbnail, hero, og)
|
||||
└── Copy URL buttons
|
||||
|
||||
4. COMMON SIZES (interactive grid)
|
||||
3. SIZE GRID (interactive)
|
||||
├── Avatar (200×200)
|
||||
├── Thumbnail (300×200)
|
||||
├── Card (400×300)
|
||||
├── Hero (1200×630)
|
||||
├── Product (600×600)
|
||||
└── [Click to see example + copy URL]
|
||||
└── Hero (1200×630)
|
||||
|
||||
5. USE CASES
|
||||
├── Development mockups
|
||||
├── Client presentations
|
||||
├── Prototyping
|
||||
└── Design systems
|
||||
4. COMPARISON TABLE
|
||||
| placehold.co | Gray boxes |
|
||||
| picsum.photos | Random stock |
|
||||
| Banatie | AI-generated, contextual |
|
||||
|
||||
6. COMPARISON TABLE
|
||||
| Service | Type | Result |
|
||||
|---------|------|--------|
|
||||
| placehold.co | Gray boxes | Generic |
|
||||
| picsum.photos | Random stock | Irrelevant |
|
||||
| Banatie | AI-generated | Contextual |
|
||||
5. PRODUCTION BRIDGE
|
||||
└── "Same images work in production"
|
||||
|
||||
7. PRODUCTION READY (conversion bridge)
|
||||
├── "These aren't just placeholders"
|
||||
├── "Same images work in production"
|
||||
├── "Or upgrade to full generation"
|
||||
└── CTA: "Get Started with Full API"
|
||||
|
||||
8. FOOTER CTA
|
||||
└── Email signup / Get API Key
|
||||
6. FOOTER CTA
|
||||
```
|
||||
|
||||
### SEO Requirements
|
||||
|
||||
**Metadata:**
|
||||
```
|
||||
title: "AI Placeholder Images — Generate Contextual Placeholders | Banatie"
|
||||
description: "Generate AI placeholder images instantly. Not random stock photos — contextual images from your description. Free Live URLs for development."
|
||||
keywords: [
|
||||
"placeholder image",
|
||||
"image placeholder",
|
||||
"ai placeholder images",
|
||||
"placeholder image generator",
|
||||
"placeholder image url",
|
||||
"image placeholder dark",
|
||||
"app placeholder image"
|
||||
]
|
||||
```
|
||||
|
||||
**JSON-LD:**
|
||||
- WebPage schema
|
||||
- HowTo schema (3 steps)
|
||||
- Product schema (for rich snippets)
|
||||
|
||||
**Internal Links:**
|
||||
- → /docs/live-urls/
|
||||
- → /docs/placeholders/ (when created)
|
||||
- → /docs/generation/
|
||||
|
||||
### Technical Requirements
|
||||
|
||||
**Before launch, verify Live URLs support:**
|
||||
- [ ] `?width=X&height=Y` parameters
|
||||
- [ ] `?aspectRatio=X:Y` (already exists)
|
||||
- [ ] Dark mode hint in prompt or parameter
|
||||
- [ ] Common preset sizes
|
||||
|
||||
**If missing:** Priority fix before landing page launch.
|
||||
|
||||
### Deliverable
|
||||
|
||||
**MVP Version (Day 1-2):**
|
||||
- Text-only, minimal graphics
|
||||
- Hero + How It Works + Code Example + CTA
|
||||
- Working interactive demo (if Live URLs ready)
|
||||
|
||||
**Enhanced Version (Day 3-5):**
|
||||
- Size grid with examples
|
||||
- Comparison table
|
||||
- Better visuals
|
||||
**File to create:**
|
||||
- `apps/landing/src/app/(landings)/placeholder-images/page.tsx`
|
||||
|
||||
---
|
||||
|
||||
## Track B: Docs Section
|
||||
### Track B: Docs Updates ✅ COMPLETE
|
||||
|
||||
### Structure
|
||||
| Task | Status | Location |
|
||||
|------|--------|----------|
|
||||
| Live URLs — placeholder section | ✅ Done | `/docs/live-urls/` |
|
||||
| Guides section created | ✅ Done | `/docs/guides/` |
|
||||
| Placeholder Images guide | ✅ Done | `/docs/guides/placeholder-images/` |
|
||||
|
||||
```
|
||||
/docs/placeholders/ ← Main page (overview)
|
||||
/docs/placeholders/sizes/ ← Size-specific examples
|
||||
/docs/placeholders/dark-mode/ ← Dark mode placeholders (4,400 vol, KD 2)
|
||||
/docs/placeholders/profiles/ ← Avatar/profile placeholders (720 vol, KD 0)
|
||||
```
|
||||
|
||||
### Page 1: `/docs/placeholders/` (Overview)
|
||||
|
||||
**Target:** "placeholder image api", "ai placeholder generator"
|
||||
|
||||
**Content:**
|
||||
```markdown
|
||||
# Placeholder Images
|
||||
|
||||
Generate contextual placeholder images with a single URL.
|
||||
|
||||
## Quick Start
|
||||
[Live URL example]
|
||||
|
||||
## Why AI Placeholders?
|
||||
- Relevant to your content (not random)
|
||||
- Production-ready quality
|
||||
- Instant via URL
|
||||
|
||||
## Common Use Cases
|
||||
- Development mockups
|
||||
- Client demos
|
||||
- Design prototypes
|
||||
|
||||
## Next Steps
|
||||
- [Sizes & Dimensions →](/docs/placeholders/sizes/)
|
||||
- [Dark Mode Placeholders →](/docs/placeholders/dark-mode/)
|
||||
- [Profile Avatars →](/docs/placeholders/profiles/)
|
||||
```
|
||||
|
||||
### Page 2: `/docs/placeholders/dark-mode/`
|
||||
|
||||
**Target:** "image placeholder dark" (4,400 vol, KD 2) ← HIGHEST PRIORITY
|
||||
|
||||
**Content:**
|
||||
```markdown
|
||||
# Dark Mode Placeholder Images
|
||||
|
||||
Generate placeholders optimized for dark mode interfaces.
|
||||
|
||||
## How to Request Dark Mode
|
||||
[URL with dark mode hint]
|
||||
|
||||
## Examples
|
||||
[Grid of dark mode examples]
|
||||
|
||||
## Tips for Dark UI
|
||||
- Use darker backgrounds
|
||||
- Mention "dark theme" in prompt
|
||||
- Avoid bright colors
|
||||
```
|
||||
|
||||
### Page 3: `/docs/placeholders/profiles/`
|
||||
|
||||
**Target:** "profile placeholder image" (720 vol, KD 0) ← ZERO DIFFICULTY
|
||||
|
||||
**Content:**
|
||||
```markdown
|
||||
# Profile & Avatar Placeholders
|
||||
|
||||
Generate realistic avatar placeholders for user profiles.
|
||||
|
||||
## Standard Sizes
|
||||
- 48×48 (small)
|
||||
- 96×96 (medium)
|
||||
- 200×200 (large)
|
||||
|
||||
## Examples
|
||||
[Avatar examples]
|
||||
|
||||
## Diversity
|
||||
Describe demographics in prompt for variety.
|
||||
```
|
||||
|
||||
### Page 4: `/docs/placeholders/sizes/`
|
||||
|
||||
**Target:** "200x200 placeholder image", "placeholder image 600x400"
|
||||
|
||||
**Content:**
|
||||
```markdown
|
||||
# Placeholder Image Sizes
|
||||
|
||||
Common sizes and how to request them.
|
||||
|
||||
## Size Reference
|
||||
| Use Case | Size | URL Parameter |
|
||||
|----------|------|---------------|
|
||||
| Avatar | 200×200 | ?width=200&height=200 |
|
||||
| Thumbnail | 300×200 | ?width=300&height=200 |
|
||||
| Card | 400×300 | ?aspectRatio=4:3 |
|
||||
| Hero | 1200×630 | ?aspectRatio=1200:630 |
|
||||
|
||||
## Custom Sizes
|
||||
[How to specify any size]
|
||||
```
|
||||
**Guide covers:**
|
||||
- Quick Start with Live URLs
|
||||
- Templates (general, photorealistic, illustration, etc.)
|
||||
- Dark mode and color control
|
||||
- Common use cases (avatars, heroes, products, testimonials)
|
||||
- File-based workflow (API download)
|
||||
|
||||
---
|
||||
|
||||
## Track C: Homepage Quick Wins
|
||||
### Track C: Homepage Quick Wins ✅ COMPLETE
|
||||
|
||||
### Current State
|
||||
|
||||
Homepage at banatie.app is indexed. `PromptUrlsSection` already showcases Live URLs — perfect fit for placeholder messaging.
|
||||
|
||||
### Recommended Changes
|
||||
|
||||
**1. Add keywords to metadata:**
|
||||
|
||||
```typescript
|
||||
keywords: [
|
||||
'API-first image generation',
|
||||
'AI image API',
|
||||
'image generation for developers',
|
||||
'prompt to image API',
|
||||
'CDN image delivery',
|
||||
// ADD THESE:
|
||||
'placeholder images',
|
||||
'ai placeholder generator',
|
||||
'placeholder image api',
|
||||
],
|
||||
```
|
||||
|
||||
**2. Update PromptUrlsSection subtitle:**
|
||||
|
||||
Current:
|
||||
> "Perfect for static sites, prototypes, and AI coding agents that generate HTML."
|
||||
|
||||
Proposed:
|
||||
> "Perfect for placeholder images, prototypes, static sites, and AI coding agents."
|
||||
|
||||
**3. Add internal link to placeholder page:**
|
||||
|
||||
In PromptUrlsSection, add link:
|
||||
> "See more: [AI Placeholder Images →](/placeholder-images)"
|
||||
|
||||
### Implementation
|
||||
|
||||
These are 10-minute changes. Do together with docs deployment.
|
||||
|
||||
---
|
||||
|
||||
## Timeline
|
||||
|
||||
### Week 1
|
||||
|
||||
| Day | Track A (Landing) | Track B (Docs) | Track C (Homepage) |
|
||||
|-----|-------------------|----------------|-------------------|
|
||||
| 1 | Verify Live URLs params | — | Add keywords + update subtitle |
|
||||
| 1-2 | Create MVP landing page | — | — |
|
||||
| 3 | Deploy, submit to GSC | Create /docs/placeholders/ | — |
|
||||
| 4-5 | Enhance with visuals | Create dark-mode page | — |
|
||||
|
||||
### Week 2
|
||||
|
||||
| Day | Track A | Track B |
|
||||
|-----|---------|---------|
|
||||
| 6-7 | Monitor GSC, iterate copy | Create profiles page |
|
||||
| 8-10 | A/B test CTAs if traffic | Create sizes page |
|
||||
| Task | Status |
|
||||
|------|--------|
|
||||
| Keywords in metadata | ✅ Added placeholder-related keywords |
|
||||
| PromptUrlsSection subtitle | ✅ Updated to mention placeholders |
|
||||
|
||||
---
|
||||
|
||||
## Success Metrics
|
||||
|
||||
### Week 1 (Immediate)
|
||||
- [ ] `/placeholder-images` live and indexed
|
||||
- [ ] `/docs/placeholders/` section live (at least overview + dark-mode)
|
||||
- [ ] Homepage keywords updated
|
||||
- [ ] All pages in GSC
|
||||
### Completed ✅
|
||||
- [x] Placeholder guide live at `/docs/guides/placeholder-images/`
|
||||
- [x] Live URLs docs enhanced with placeholder examples
|
||||
- [x] Homepage keywords updated
|
||||
- [x] All pages in sitemap
|
||||
|
||||
### Month 1
|
||||
### Week 1 Targets
|
||||
- [ ] `/placeholder-images` landing live and indexed
|
||||
- [ ] GSC submission for new pages
|
||||
|
||||
### Month 1 Targets
|
||||
- [ ] GSC shows impressions for placeholder keywords
|
||||
- [ ] First organic clicks from placeholder searches
|
||||
- [ ] At least one signup attributed to placeholder content
|
||||
|
||||
### Month 3
|
||||
### Month 3 Targets
|
||||
- [ ] Top 20 for "placeholder image" (14,800 vol)
|
||||
- [ ] Top 10 for "image placeholder dark" (4,400 vol, KD 2)
|
||||
- [ ] Top 5 for zero-KD keywords
|
||||
|
||||
---
|
||||
|
||||
## Technical Checklist
|
||||
## Next Steps
|
||||
|
||||
### Before Landing Page Launch
|
||||
1. **Create landing page** `/placeholder-images`
|
||||
- Use research findings for structure
|
||||
- Include interactive size grid
|
||||
- Show comparison with competitors
|
||||
|
||||
- [ ] Live URLs support `?width=X&height=Y`
|
||||
- [ ] Live URLs support `?aspectRatio=X:Y` (verify)
|
||||
- [ ] Test dark mode prompts produce dark images
|
||||
- [ ] CDN caching works for Live URLs
|
||||
- [ ] No rate limit issues for demo
|
||||
2. **Submit to GSC** after deployment
|
||||
|
||||
### SEO Checklist
|
||||
|
||||
- [ ] Canonical URLs set
|
||||
- [ ] OG image created or use default
|
||||
- [ ] JSON-LD schemas added
|
||||
- [ ] Internal links from homepage
|
||||
- [ ] Internal links from docs
|
||||
- [ ] sitemap.xml updated
|
||||
- [ ] GSC submission
|
||||
|
||||
---
|
||||
|
||||
## Risk Mitigation
|
||||
|
||||
| Risk | Mitigation |
|
||||
|------|------------|
|
||||
| Live URLs not ready | Launch docs first, landing page waits |
|
||||
| Low conversion to full API | Add clear upgrade path messaging |
|
||||
| Competitors copy quickly | Speed — be first, build authority |
|
||||
| Placeholder users expect free | Set expectations early, free tier limits |
|
||||
|
||||
---
|
||||
|
||||
## Conversion Strategy
|
||||
|
||||
**Key Message Throughout:**
|
||||
|
||||
> "Start with placeholders. Ship with production-ready images."
|
||||
|
||||
**Upgrade Triggers:**
|
||||
1. Hit free tier limit → upgrade prompt
|
||||
2. Need consistency across images → show references feature
|
||||
3. Want higher quality → show production generation
|
||||
4. Need API integration → show full API docs
|
||||
|
||||
**Placement:**
|
||||
- End of every placeholder doc page
|
||||
- Bottom of landing page
|
||||
- In-app after X free generations
|
||||
|
||||
---
|
||||
|
||||
## Files to Create
|
||||
|
||||
### Landing
|
||||
- `apps/landing/src/app/(landings)/placeholder-images/page.tsx`
|
||||
|
||||
### Docs
|
||||
- `apps/landing/src/app/(apps)/docs/placeholders/page.tsx`
|
||||
- `apps/landing/src/app/(apps)/docs/placeholders/dark-mode/page.tsx`
|
||||
- `apps/landing/src/app/(apps)/docs/placeholders/profiles/page.tsx`
|
||||
- `apps/landing/src/app/(apps)/docs/placeholders/sizes/page.tsx`
|
||||
|
||||
### Config Updates
|
||||
- `src/config/docs-seo.ts` — add placeholder pages
|
||||
- `src/config/docs-schema.ts` — add schemas if needed
|
||||
- `src/app/sitemap.ts` — add new URLs
|
||||
3. **Monitor rankings** for target keywords
|
||||
|
||||
---
|
||||
|
||||
## Reference Documents
|
||||
|
||||
- Research: `/banatie-content/research/keywords/placeholder-niche-deep-dive-2026-01-02.md`
|
||||
- Content brief: `/banatie-content/0-inbox/placeholder-ai-images.md`
|
||||
- Docs SEO task: `/banatie-service/docs-seo-task.md`
|
||||
- Guide revision task: `/banatie-service/inbox/task-placeholder-guide-revision.md` (if created)
|
||||
- Docs SEO analysis: `/banatie-content/research/keywords/docs-seo-analysis-2026-01-02.md`
|
||||
|
||||
---
|
||||
|
||||
**Document Owner:** @men
|
||||
**Last Updated:** January 2, 2026
|
||||
**Next Review:** End of Week 1
|
||||
**Status:** Ready for execution
|
||||
**Last Updated:** January 5, 2026
|
||||
**Next Review:** After landing page deployment
|
||||
**Status:** Track B+C complete, Track A in progress
|
||||
|
|
|
|||
Loading…
Reference in New Issue