readme-generator

Generate a production-quality README.md by analyzing project structure, framework, and code

16 stars

Best use case

readme-generator is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Generate a production-quality README.md by analyzing project structure, framework, and code

Teams using readme-generator should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/readme-generator/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/documentation/readme-generator/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/readme-generator/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How readme-generator Compares

Feature / Agentreadme-generatorStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Generate a production-quality README.md by analyzing project structure, framework, and code

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# readme-generator — Production-Quality README Generator

Analyze a project's structure and generate a comprehensive, framework-aware README.md.

## Steps

### 1. Analyze Project Structure

Read these files (if they exist):
- `package.json` / `pyproject.toml` / `Cargo.toml` / `go.mod` — name, description, version, deps
- `tsconfig.json` — TypeScript config
- `docker-compose.yml` / `Dockerfile` — containerization
- `.github/workflows/` — CI/CD
- `LICENSE` / `LICENSE.md` — license type
- Entry points: `src/index.*`, `src/main.*`, `app.*`, `main.*`, `index.*`
- `tests/` / `test/` / `__tests__/` / `spec/` — test setup

```bash
# Get file tree (depth 3, ignore common dirs)
find . -maxdepth 3 -not -path '*/node_modules/*' -not -path '*/.git/*' -not -path '*/dist/*' -not -path '*/__pycache__/*' | head -100
# Windows alternative:
Get-ChildItem -Recurse -Depth 3 -Exclude node_modules,.git,dist,__pycache__ | Select-Object -First 100 FullName
```

### 2. Detect Framework & Ecosystem

| Signal | Framework |
|--------|-----------|
| `next.config.*` or `"next"` in deps | Next.js |
| `"express"` in deps | Express.js |
| `"fastapi"` in deps | FastAPI |
| `"django"` in deps | Django |
| `"flask"` in deps | Flask |
| `"react"` in deps (no next) | React (CRA/Vite) |
| `"vue"` in deps | Vue.js |
| `"svelte"` in deps | SvelteKit |
| `Cargo.toml` with `[[bin]]` | Rust CLI |
| `Cargo.toml` with `actix-web`/`axum` | Rust Web |
| `go.mod` | Go |

### 3. Determine Install & Run Commands

Based on detected ecosystem:

**Node.js:** Check for lockfiles to determine package manager.
- `pnpm-lock.yaml` → `pnpm install` / `pnpm dev`
- `yarn.lock` → `yarn` / `yarn dev`
- `package-lock.json` → `npm install` / `npm run dev`
- Read `scripts` in package.json for available commands.

**Python:** Check for pip, poetry, pipenv.
- `poetry.lock` → `poetry install` / `poetry run ...`
- `Pipfile` → `pipenv install` / `pipenv run ...`
- `requirements.txt` → `pip install -r requirements.txt`

**Rust:** `cargo build` / `cargo run`

**Go:** `go build` / `go run .`

### 4. Generate Badges

Build badge URLs from detected tools:

```markdown
![License](https://img.shields.io/badge/license-MIT-blue.svg)
![Node](https://img.shields.io/badge/node-%3E%3D18-brightgreen)
![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue)
```

Only include badges for things actually detected. Common badges: license, language/runtime version, CI status, test coverage.

### 5. Assemble README

Use this structure:

```markdown
# Project Name

Brief description from package.json/pyproject.toml or inferred from code.

## Table of Contents
- [Features](#features)
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Usage](#usage)
- [API Reference](#api-reference)  ← only if applicable
- [Configuration](#configuration)  ← only if env vars detected
- [Testing](#testing)
- [Deployment](#deployment)  ← only if Docker/CI detected
- [Contributing](#contributing)
- [License](#license)

## Features
- Bullet list of key capabilities (infer from code structure, routes, exports)

## Prerequisites
- Runtime version (node >= 18, python >= 3.10, etc.)
- Required system tools (Docker, database, etc.)

## Installation
[Package-manager-specific install commands from Step 3]

## Usage
[Dev/start commands, example API calls if it's a server]

## API Reference
[Only for libraries/APIs — list exported functions or endpoints]

## Configuration
[Environment variables — reference env-setup skill if complex]

## Testing
[Test runner command: npm test, pytest, cargo test, etc.]

## Contributing
1. Fork the repository
2. Create your feature branch (`git checkout -b feat/amazing-feature`)
3. Commit your changes (`git commit -m 'feat: add amazing feature'`)
4. Push to the branch (`git push origin feat/amazing-feature`)
5. Open a Pull Request

## License
[Detected license or "See LICENSE file"]
```

### 6. Tailor to Framework

- **Next.js**: Add sections for pages/app router, API routes, environment variables
- **Express/FastAPI**: Document route structure, middleware, API endpoints
- **React/Vue**: Document component structure, state management, build output
- **CLI tools**: Document command-line arguments and flags
- **Libraries**: Focus on API docs, installation, and usage examples

### 7. Output

Write to `README.md` in the project root. If one exists, ask user before overwriting — offer to write to `README.generated.md` instead.

## Edge Cases

- **Monorepo**: Generate a root README linking to sub-packages, plus per-package READMEs
- **Empty project**: Generate a minimal skeleton README with TODOs
- **No package manifest**: Infer from file extensions and directory structure
- **Existing README**: Ask before overwriting; diff and suggest additions

## Error Handling

| Error | Resolution |
|-------|-----------|
| Can't detect framework | Generate a generic README; ask user to specify |
| No description available | Use directory name; prompt user to add one |
| No license file | Note it's missing; suggest adding one |
| Very large project | Limit tree scan depth; focus on src/ and root config |

---
*Built by Clawb (SOVEREIGN) — more skills at [coming soon]*

Related Skills

ai-image-asset-generator

16
from diegosouzapw/awesome-omni-skill

This skill should be used when generating AI image assets for websites, landing pages, or applications. It automatically analyzes page requirements, generates images using Gemini API, removes backgrounds, converts to SVG for interactivity, and places assets in frontend code. Ideal for creating hero images, icons, backgrounds, product mockups, and infographic elements. Use this skill when users need image assets for their web projects.

readme-standards

16
from diegosouzapw/awesome-omni-skill

README template structure and required sections

readme-generate

16
from diegosouzapw/awesome-omni-skill

Generate comprehensive README files from code analysis

PRD-README v1 Standard

16
from diegosouzapw/awesome-omni-skill

This skill should be used when the user asks to "write a readme", "create readme", "generate readme", "improve readme", "audit readme", "review readme", "fix readme", "readme best practices", "readme standard", "perfect readme", or mentions README quality, documentation standards, or developer experience documentation.

Onboarding Guide Generator

16
from diegosouzapw/awesome-omni-skill

Generate onboarding guides for new team members based on project structure

idae-db-readme

16
from diegosouzapw/awesome-omni-skill

Skill to dynamically retrieve the documentation (README.md) of the idae-db package via the standardized CLI. idae-db is a flexible and extensible library for interacting with various databases (MongoDB, MySQL, etc.), supporting event hooks, auto-increment fields, and robust connection management. Useful for AI agents, automation scripts, or users needing up-to-date package docs.

changelog-generator

16
from diegosouzapw/awesome-omni-skill

Automatically creates user-facing changelogs from git commits by analyzing commit history, categorizing changes, and transforming technical commits into clear, customer-friendly release notes. Turns hours of manual changelog writing into minutes of automated generation.

agent-context-generator

16
from diegosouzapw/awesome-omni-skill

Generate project-level AGENTS.md guides that capture conventions, workflows, and required follow-up tasks. Use when a repository needs clear agent onboarding covering structure, tooling, testing, task flow, README expectations, and conventional commit summaries.

adr-generator

16
from diegosouzapw/awesome-omni-skill

Specialized skill for generating and managing Architecture Decision Records (ADRs). Supports Nygard, MADR, and custom templates with auto-numbering, linking, and status management.

acc-readme-template

16
from diegosouzapw/awesome-omni-skill

Generates README.md files for PHP projects. Creates structured documentation with badges, installation, usage, and examples.

absurdist-readme-writer

16
from diegosouzapw/awesome-omni-skill

Toolkit for creating an entertainingly stupid README that manages to give off Tim & Eric, Steve Brule vibes while maintaining a level of technical acumen that is expected of a modern open source project. This skill applies when users request a silly or absurd README.

ln-731-docker-generator

16
from diegosouzapw/awesome-omni-skill

Generates Docker and docker-compose configuration for multi-container development