Create, modify, validate, and optimize README.md files following GitHub best practices.
npx claudepluginhub tsilva/claudeskillz --plugin project-readme-authorThis skill uses the workspace's default tool permissions.
Create READMEs that hook readers in 5 seconds, prove value in 30 seconds, and enable success in under 10 minutes.
Creates new Angular apps using Angular CLI with flags for routing, SSR, SCSS, prefixes, and AI config. Follows best practices for modern TypeScript/Angular development. Use when starting Angular projects.
Generates Angular code and provides architectural guidance for projects, components, services, reactivity with signals, forms, dependency injection, routing, SSR, ARIA accessibility, animations, Tailwind styling, testing, and CLI tooling.
Executes ctx7 CLI to fetch up-to-date library documentation, manage AI coding skills (install/search/generate/remove/suggest), and configure Context7 MCP. Useful for current API refs, skill handling, or agent setup.
Create READMEs that hook readers in 5 seconds, prove value in 30 seconds, and enable success in under 10 minutes.
| Operation | Triggers | Purpose |
|---|---|---|
| create | No README exists, "create/generate README" | Build from scratch |
| modify | README exists, "update/change README" | Preserve structure, update sections |
| validate | "check/review/audit README" | Score against best practices |
| optimize | "improve/enhance README" | Fix issues, enhance quality |
Use the deterministic operation selector:
uv run shared/select_operation.py --skill project-readme-author --args "$ARGUMENTS" --check-files "README.md"
Fallback rules (if script unavailable):
$ARGUMENTS for explicit operation keywordscreate if no README, modify if README existsUse when building a README from scratch. Follow the Core Framework and Workflow sections below.
Mandatory pre-draft checklist:
.archived.md exists? If yes, archive notice goes firstUse when updating an existing README while preserving its structure.
<!-- custom -->...<!-- /custom --> is never touched.archived.md exists, ensure notice is present and current; if removed, remove the noticeWhen in doubt, preserve existing content and use AskUserQuestion to confirm before removing anything.
Score an existing README against best practices. Run Essential → Professional → Elite → Virality checklists plus project-type specifics. See references/validation-guide.md for scoring format, tiers, project-type checks, and checklists.
Scoring weights: Essential 40%, Professional 25%, Elite 15%, Virality 20%
Quick Wins (auto-apply): Center hero, add alt text, fix badge URLs, add TOC if >500 words, standardize badge style, fix heading hierarchy, add emojis to headers, add archive notice if .archived.md exists and notice is missing.
Virality Quick Wins (auto-apply):
Requires Approval: Add new sections, rewrite tagline, change badge selection, remove emojis, restructure content order.
Virality Suggestions (require approval):
| Phase | Time | Purpose | Elements | Virality Trigger |
|---|---|---|---|---|
| Hook | 0-3 sec | Instant recognition | Logo + badges + one-liner + demo visual | Curiosity gap + visual impact |
| Prove | 3-30 sec | Build credibility | Social proof, features, trust signals | Social proof + comparison wins |
| Enable | 30 sec - 5 min | Immediate success | One-liner install + working example | "I can do this" moment |
| Extend | Committed users | Deep engagement | Docs links, contributing, API reference | Share triggers + community |
The goal: Time to first success under 10 minutes. The first 5-10 lines visible without scrolling determine whether users stay or leave.
The "aha moment" is the single most impressive demonstration of your project's value. It must answer "What does this DO?" within 3 seconds.
The first visual element after the tagline must show transformation — before → action → after.
| Type | Aha Format | Example |
|---|---|---|
| CLI | Terminal GIF: before → command → after | ripgrep searching 1M files in 0.2s |
| Library | 3-line code with commented "wow" output | # 50 lines → 3 lines |
| AI/ML | Benchmark comparison chart | "2x faster than GPT-3" |
| Web App | GIF of core interaction loop | One-click deploy animation |
Ask: "What's the most impressive single thing this project does?" Then visualize it.
Every README must have a logo:
logo.png at repo root; if found, skip to README generationmcp__image-tools__get_image_metadata to get width, then divide by 2 for retina display (e.g., 1024px → width="512")The hero section must be center-aligned with these elements in order:
The title must be exactly the repository name. Preserve original casing — my-awesome-tool stays my-awesome-tool, not "My Awesome Tool".
<div align="center">
<img src="logo.png" alt="Project Name" width="{DISPLAY_WIDTH}"/>
[](link) [](link) [](link)
**A clear, catchy one-liner that explains what this does and why it matters**
[Documentation](url) · [Demo](url) · [Discord](url)
</div>
A bold line placed after badges, before tagline, to create an information gap:
| Type | Example |
|---|---|
| Question | "Ever spent 2 hours debugging what this fixes in 10 seconds?" |
| Stat | "Used by 50,000+ developers worldwide" |
| Comparison | "10x faster than grep for code search" |
| Challenge | "Find any file in your repo under 100ms" |
Rules:
| Element | Specification |
|---|---|
| Logo | Width = half actual pixels (for retina), centered |
| Badges | 3-6 maximum, shields.io for consistency |
| Curiosity hook | Optional bold line creating information gap |
| Tagline | One sentence with emoji(s), max 350 chars (fits GitHub "About" field) |
| Quick links | Docs, demo, community (if available) |
The tagline is THE hook — the single most critical line in your README. Users decide to stay or leave based on this one sentence. It must be short, witty, and instantly communicate what the project does.
Bookend Emoji Pattern:
Requirements:
description field exists, use as base and enhance. If crafting new, sync back.Great taglines (bookend pattern):
🚀 Build production-ready APIs in minutes, not hours ⚡🔍 Find anything in your codebase instantly 🎯🎨 Turn designs into code with one command 💻🔧 Magnificent app which corrects your previous console command ✨Anti-patterns:
For CLI tools, place an animated GIF demo immediately after the tagline.
If .archived.md exists at repo root, place this block as the absolute first README element (before hero <div align="center">):
> [!WARNING]
> ## Archived
> This project is archived and no longer maintained.
>
> {rewritten .archived.md content}
Read .archived.md and rewrite its content to match the README's tone and style — clear, concise, well-formatted prose. Preserve all factual information (reasons, alternatives, migration paths) but do not copy the raw text literally. Adapt structure, phrasing, and formatting to feel native to the README.
Replace existing notice (never duplicate). Remove notice when .archived.md is absent.
Structure the Overview section using Problem-Solution-Result pattern for emotional connection:
**The Pain:** [1-2 sentences describing the frustration users face]
**The Solution:** [What this project does differently]
**The Result:** [Quantifiable outcome — time saved, lines reduced, speed gained]
| Before | After |
|---|---|
| 50 lines of boilerplate | 3-line function call |
| 2 hours debugging | 10-second fix |
| Manual deployments | One-click CI/CD |
Ordered by impact (include what you have):
Quantified Trust Signals
> **50,000+** downloads | **4,000+** stars | **500+** contributors
Authority Endorsements
> "This tool is incredible. Saved us 10 hours/week."
> — [@notable_person](link), CTO at Company
"Used By" Logos — 6-12 recognizable company logos
Community Size — Discord badge with member count
Rules:
Provide multiple engagement paths from low to high commitment:
| Level | Action | Example |
|---|---|---|
| 1. Try | Quick Start | npx create-myapp or pip install myapp |
| 2. Learn | Documentation | "Read the docs (5 min read)" |
| 3. Connect | Community | "Questions? Join our Discord" |
| 4. Support | Star | "Useful? Give us a star ⭐" |
| 5. Contribute | PR | "Good first issues" |
Include at least 3 tiers. Place primary CTA (Try) prominently; others in appropriate sections.
Elements designed to be screenshot and shared:
<div align="center">
| Metric | Value |
|--------|-------|
| ⚡ Speed | 10x faster than alternatives |
| 📦 Size | 2MB (no dependencies) |
| 🔧 Setup | 30 seconds |
</div>
Fair benchmarks against alternatives:
| Tool | Speed | Memory | Features |
|---|---|---|---|
| This project | 0.2s | 50MB | ✅ All |
| Alternative A | 2.1s | 200MB | ⚠️ Partial |
| Alternative B | 1.5s | 150MB | ❌ Missing |
Rules: Use equivalent configurations, link to benchmark methodology, update when alternatives improve.
Remind users to configure GitHub's social preview image (Settings → Social preview):
Use 4-7 badges in priority order: Build/CI → Coverage → Version → License → Downloads → Community.
For badge implementation details and code, see references/badges-and-visuals.md.
For detailed templates and examples by project type (AI/ML, CLI, Libraries, Web Apps), see references/project-types.md.
For visual elements, social proof, and community links, see references/badges-and-visuals.md.
uv run shared/detect_project.py --path "$(pwd)"pyproject.toml description as tagline if available (add emojis, preserve core message). If no description, write crafted tagline back..archived.md exists, read contents for archive notice (placed at README top)logo.png, generate with project-logo-author if missing.archived.md status — add/update/remove archive notice accordinglyRun Essential → Professional → Elite → Virality checklists plus project-type specifics. Calculate weighted score (Essential 40%, Professional 25%, Elite 15%, Virality 20%), generate report with actionable recommendations. See references/validation-guide.md.
Critical: Check section ordering against Hook → Prove → Enable → Extend. Verify that value proposition / "why" sections appear before feature lists, quick start appears before deep reference docs, and extend content (contributing, community) comes last. Misordered sections undermine conversion regardless of content quality.