template-selector
Template-selector guides journalism projects to the correct documentation template using a structured decision tree. Use it when launching new journalism initiatives, establishing project documentation, or determining whether a project fits editorial-tool, event-website, publication, research-project, content-pipeline, or digital-archive categories. The skill clarifies which template matches specific project characteristics like audience, publishing cadence, scope, and end dates.
git clone --depth 1 https://github.com/jamditis/claude-skills-journalism /tmp/template-selector && cp -r /tmp/template-selector/project-templates-toolkit/skills/template-selector ~/.claude/skills/template-selectorSKILL.md
# Template selector
Match projects to the correct template category. Don't guess—use the decision tree.
## Quick reference
| Project type | Template category |
|-------------|-------------------|
| Newsroom AI tool, fact-checker | editorial-tool |
| Conference, summit, workshop | event-website |
| Newsletter, podcast, blog | publication |
| Investigation, data journalism | research-project |
| CMS workflow, syndication | content-pipeline |
| Historical collection, archive | digital-archive |
## Decision tree
```
Is it for journalism/publishing?
├── Yes →
│ ├── Has specific end date/event? → event-website
│ ├── Ongoing content series? → publication
│ ├── Historical/preservation? → digital-archive
│ ├── Newsroom tool/AI? → editorial-tool
│ ├── CMS/automation? → content-pipeline
│ └── Investigation with scope? → research-project
│
└── No (general software) →
Use general template or another collection
```
## Detailed category descriptions
### editorial-tool
**Use when:** Building newsroom tools, writing assistants, fact-checkers, AI-powered research tools, moderation systems, workflow automation for journalists
**Not for:** Generic productivity tools, non-journalism software
**Signs it's an editorial tool:**
- Primary users are journalists, editors, or producers
- Helps with a specific editorial workflow step
- Requires accuracy/trust for publication decisions
### event-website
**Use when:** Building sites for conferences, summits, workshops, or events with specific dates
**Not for:** Ongoing content, organization websites without events, event management software (that's editorial-tool)
**Signs it's an event website:**
- Has a specific event date (or date range)
- Registration/attendance is involved
- Content includes speakers, schedule, venue info
### publication
**Use when:** Building newsletters, podcasts, blogs, magazines, or ongoing content series with regular publishing schedule
**Not for:** One-off articles, static content sites, CMSes that power publications (that's editorial-tool)
**Signs it's a publication:**
- Regular publishing cadence (daily, weekly, monthly)
- Growing subscriber/reader base
- Consistent voice and format
### research-project
**Use when:** Building investigative journalism projects, data journalism, analysis with defined scope and end date
**Not for:** Ongoing research operations, general data analysis, tools that support research (that's editorial-tool)
**Signs it's a research project:**
- Answers a specific question or hypothesis
- Has a defined end point (publication date)
- Involves data collection, analysis, and findings
### content-pipeline
**Use when:** Building CMS workflows, publishing automation, content syndication systems, feed aggregators, cross-posting tools
**Not for:** Manual publishing workflows, single-site content management, publications themselves
**Signs it's a content pipeline:**
- Automates content movement between systems
- Transforms content formats
- Handles scheduling and distribution
### digital-archive
**Use when:** Building historical collections, preservation projects, research databases, document repositories
**Not for:** Active news sites, CMS platforms, search engines
**Signs it's a digital archive:**
- Primary focus is preservation
- Collection has defined scope (time period, topic)
- Users are researchers, historians, or the public seeking historical content
## Common mistakes
| Project | Wrong choice | Right choice | Why |
|---------|-------------|--------------|-----|
| Newsletter dashboard | editorial-tool | publication | It's about the publication, not the tech |
| AI fact-checker | research-project | editorial-tool | It's a tool, not a one-off investigation |
| Event registration system | event-website | editorial-tool | It's a tool that serves events |
| Podcast website | content-pipeline | publication | It's a publication, not automation |
| Document search tool | digital-archive | editorial-tool | It's a tool, not the archive itself |
| FOIA tracking system | research-project | editorial-tool | It's a tool that supports research |
## The litmus test
If you're still unsure, ask:
1. **Is this a tool that helps journalists do X, or is this X itself?**
- Tool → editorial-tool
- The thing itself → other categories
2. **Does it have a specific end date?**
- Yes, event dates → event-website
- Yes, publication date → research-project
- No, ongoing → publication, content-pipeline, or digital-archive
3. **Is preservation the primary goal?**
- Yes → digital-archive
- No → other categories
## Using templates
### For project memory (CLAUDE.md)
1. Identify project category using decision tree above
2. Copy appropriate template from `project-memory/templates/`
3. Fill in bracketed placeholders with your specifics
4. Delete sections that don't apply
5. Add project-specific gotchas as you discover them
### For retrospectives (LESSONS.md)
1. Identify project category
2. Copy appropriate template from `project-retrospective/templates/`
3. Fill in as the project progresses or at completion
4. Be specific about failures—that's the valuable part
## Template locations
```
claude-skills-journalism/
├── project-memory/templates/
│ ├── editorial-tool.md
│ ├── event-website.md
│ ├── publication.md
│ ├── research-project.md
│ ├── content-pipeline.md
│ └── digital-archive.md
│
└── project-retrospective/templates/
├── editorial-tool.md
├── event.md
├── publication.md
└── research-project.md
```
---
*Pick the specific template that fits. "General" is a last resort.*Web accessibility patterns for news sites, journalism tools, and academic platforms. Use when building accessible interfaces, auditing existing sites for WCAG compliance, writing alt text for news images, creating accessible data visualizations, or ensuring content reaches all readers including those using assistive technologies. Essential for newsroom developers and anyone publishing web content.
Electron desktop application development with React, TypeScript, and Vite. Use when building desktop apps, implementing IPC communication, managing windows/tray, handling PTY terminals, integrating WebRTC/audio, or packaging with electron-builder. Covers patterns from AudioBash, Yap, and Pisscord projects.
Remote JavaScript console access and debugging on mobile devices. Use when debugging web pages on phones/tablets, accessing console errors without desktop DevTools, testing responsive designs on real devices, or diagnosing mobile-specific issues. Covers Eruda, vConsole, Chrome/Safari remote debugging, and cloud testing platforms.
Use this skill when creating new files that represent architectural decisions — data models, infrastructure configs, auth boundaries, API contracts, CI/CD pipelines, or event systems. Flags irreversible decisions and forces a discussion about trade-offs before committing.
Python data processing pipelines with modular architecture. Use when building content processing workflows, implementing dispatcher patterns, integrating Google Sheets/Drive APIs, or creating batch processing systems. Covers patterns from rosen-scraper, image-analyzer, and social-scraper projects.
This skill should be used when the user reports a bug, describes unexpected behavior, says something is "broken", "not working", "failing", mentions an "error", "issue", or "problem" in code, or asks to "fix" something. Enforces test-driven bug fixing workflow.
Methodology for effective AI-assisted software development. Use when helping users build software with AI coding assistants, debugging AI-generated code, planning features for AI implementation, managing version control in AI workflows, or when users mention "vibe coding," Claude Code, Cursor, GitHub Copilot, Aider, Continue, Cline, Codex, Windsurf, or similar AI coding tools. Provides strategies for planning, testing, debugging, and iterating on code written with LLM assistance.
Web scraping with anti-bot bypass, content extraction, undocumented APIs and poison pill detection. Use when extracting content from websites, handling paywalls, implementing scraping cascades or processing social media. Covers requests, trafilatura, Playwright with stealth mode, yt-dlp and instaloader patterns.