dmccreary/claude-skills/readme-generator
Claude Code and agent skill by dmccreary/claude-skills
- community
Checking that the SKILL.md file is still in the repository.
Creates or updates the GitHub README for a textbook project with badges, project overview, site metrics, and getting-started instructions.
Install
npx vskill@latest install dmccreary/claude-skills/readme-generatorSKILL.md
README Generator
Generate or update a comprehensive README.md file for GitHub repositories following best practices.
Purpose
This skill automates the creation of professional, well-structured README.md files for GitHub repositories. It generates all essential sections including badges for technologies used, project overview, site metrics, getting started instructions, project structure, and contact information. The skill is particularly optimized for MkDocs-based intelligent textbook projects but can be adapted for any repository type.
When to Use This Skill
Use this skill when:
- Starting a new GitHub repository that needs a README.md
- Updating an existing README.md to follow best practices
- After significant project changes that should be documented
- Before publishing or sharing a repository
- When migrating from another documentation system
- After adding new technologies or dependencies
Workflow
Step 1: Analyze Repository Context
Before generating the README, gather information about the repository:
- Check if README.md already exists in the root directory
- Identify the repository name from
.git/configor the working directory - Read
mkdocs.ymlif it exists to extract:
- Site name
- Site description
- Site URL (for GitHub Pages link)
- Repository URL
- Check for documentation in
/docsdirectory - Identify technologies used (look for package.json, requirements.txt, mkdocs.yml, etc.)
User Dialog Triggers:
- If README.md exists: Ask "README.md already exists. Would you like to update it or create a backup first?"
- If repository URL not found: Ask "What is the GitHub repository URL? (e.g., https://github.com/username/repo-name)"
- If site URL not configured: Ask "Is this site deployed to GitHub Pages? If yes, what's the URL?"
Step 2: Generate Badges
Create badges for all relevant technologies and platforms. Use shields.io format for consistency.
Badge Order:
- MkDocs (if mkdocs.yml exists)
- MkDocs Material (if theme is Material)
- GitHub Pages live badge (if site is deployed)
- Claude Code badge
- Claude Skills badge (if .claude/skills or skills/ directory exists)
- License badge
- Additional technology badges (Python, JavaScript, p5.js, etc.)
Do NOT include a "GitHub repo" badge that links the README back to its own repository. Anyone reading the README is already on GitHub (or already has the repo cloned), so a self-link adds no value. The GitHub Pages badge is fine because it points to a different surface (the published site).
Badge Templates:
Check for these additional badges:
- p5.js:
[](https://p5js.org/) - Python:
[](https://www.python.org/) - JavaScript:
[](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
Step 3: Add License Badge
Look for license information in:
LICENSEfile in rootdocs/license.mdmkdocs.yml(copyright field)
Default to Creative Commons BY-NC-SA 4.0 if not specified:
Other common licenses:
- MIT:
[](https://opensource.org/licenses/MIT) - Apache 2.0:
[](https://opensource.org/licenses/Apache-2.0) - GPL-3.0:
[](https://www.gnu.org/licenses/gpl-3.0)
Step 4: Create Website Link Section
After badges, add a prominent link to the live website (if deployed):
Step 5: Write Overview/Short Description
Create a compelling 1-3 paragraph overview that answers:
- What is this project?
- Who is it for?
- Why is it valuable?
- What makes it unique or special?
Guidelines:
- Keep it concise but engaging
- Use active voice
- Highlight key features or benefits
- Mention the educational framework if applicable
- For textbooks: mention target audience (grade level, prerequisites)
Example for Intelligent Textbook:
Step 6: Add Site Status and Metrics
Gather and display project metrics to show completeness and scope.
Read the canonical metrics file — do NOT re-derive counts.
Book-wide totals are the single source of truth in docs/learning-graph/book-metrics.json (produced by the book-metrics tool and validated against src/book-metrics/book-metrics.schema.json). README metrics MUST come from this file so the README, LinkedIn announcement, and case-study card all show identical numbers.
The metrics object provides: concepts, chapters, microsims, stories, glossaryTerms, faqs, quizQuestions, chapterQuizzes, chapterReferences, references, diagrams, equations, words, links, appendices, mascotImages, developmentStage, and equivalentPages. For identity fields (title, author, repo URL, license) read book-metadata.json / mkdocs.yml.
Only fall back to scripts/collect-site-metrics.py (markdown/image scanning) for counts the metrics file does not provide — e.g. image-asset counts or code-block counts. Never recount concepts/chapters/words by hand.
Format as a table:
Book-Specific Metrics:
For specialized textbooks, add domain-specific metrics:
- Circuits textbook: Number of circuit diagrams, simulations
- History textbook: Number of timelines, maps, primary source documents
- Programming textbook: Number of code examples, exercises, projects
- Math textbook: Number of equations, proofs, worked examples
Step 7: Add Getting Started Section
Provide clear instructions for using and customizing the project.
Standard sections:
- Prerequisites (if any)
- Clone the Repository
- Installation (if dependencies needed)
- Building the Site
- Local Development
- Deployment
Example:
git clone https://github.com/username/repo-name.git cd repo-name
pip install mkdocs pip install mkdocs-material
mkdocs build
mkdocs serve
mkdocs gh-deploy
Step 8: Document Repository Structure
Create an ASCII tree diagram showing the repository structure with explanatory comments.
Use this approach:
- Don't list every single file
- Show representative examples
- Add comments explaining each major directory
- Keep it concise (10-20 lines)
Example:
repo-name/ ├── docs/ # MkDocs documentation source │ ├── chapters/ # Chapter content │ │ ├── 01-intro/ │ │ │ ├── index.md # Chapter markdown │ │ │ └── quiz.md # Chapter quiz │ │ └── 02-concepts/ │ ├── sims/ # Interactive p5.js MicroSims │ │ ├── graph-viewer/ │ │ │ ├── main.html # Standalone simulation │ │ │ └── index.md # Documentation │ ├── learning-graph/ # Learning graph data and analysis │ │ ├── learning-graph.csv # Concept dependencies │ │ ├── learning-graph.json # vis-network format │ │ └── quality-metrics.md # Quality analysis │ ├── glossary.md # ISO 11179-compliant definitions │ ├── faq.md # Frequently asked questions │ └── references.md # Curated references ├── skills/ # Claude AI skills (if present) │ └── [skill-name]/ │ ├── SKILL.md # Skill definition │ └── *.py # Supporting scripts ├── mkdocs.yml # MkDocs configuration └── README.md # This file
Step 9: Add Issue Reporting Section
Direct users to the GitHub Issues page:
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/archived/readme-generator/SKILL.md
Popularity
- Repository stars
- 91
- Repository forks
- 12
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 3 Apr 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/dmccreary/claude-skills/readme-generator)