README Generator
Build a professional README.md from a form: badges, features, install and usage code blocks, options and environment tables, and an auto-generated table of contents.
README.md
# My Project
A short, punchy description of what this project does.
 
## Table of Contents
- [Features](#features)
- [Requirements](#requirements)
- [Installation](#installation)
- [Usage](#usage)
- [Options](#options)
- [Environment Variables](#environment-variables)
- [Contributing](#contributing)
- [License](#license)
## Features
- Fast and dependency-free
- Works in the browser and in Node
- Fully typed with TypeScript
## Requirements
- Node.js 20 or newer
- npm 10 or newer
## Installation
```bash
npm install my-project
```
## Usage
```javascript
import { greet } from "my-project";
console.log(greet("world"));
```
## Options
| Option | Type | Default | Description |
| --- | --- | --- | --- |
| verbose | boolean | false | Print extra logging |
| timeout | number | 5000 | Milliseconds before giving up |
## Environment Variables
| Variable | Required | Description |
| --- | --- | --- |
| API_KEY | yes | Your API key |
| LOG_LEVEL | no | debug, info or warn |
## Contributing
Contributions are welcome. To get started:
1. Fork the repository and create a branch from `main`.
2. Make your change, adding tests where it makes sense.
3. Run the test suite and make sure it passes.
4. Open a pull request describing what you changed and why.
## License
Released under the MIT license.
Table-of-contents links use GitHub's own anchor rules — headings are lowercased, punctuation is stripped and spaces become hyphens — so they work as soon as you commit the file.
What is the README Generator?
Fill in the fields and this tool assembles a complete README. md — title, tagline, badges, features, requirements, installation and usage code blocks, an options table, an environment variable table, contributing guidance and a licence section.
- Table of contents built with GitHub's real anchor-slug rules, including duplicate suffixes
- Fenced code blocks with a selectable language for install and usage examples
- Pipe-separated input turned into proper Markdown tables, with pipes inside cells escaped
- Badge lines rendered as Markdown images — no network requests are made
- Six licence options and an optional copyright line
- Live preview with copy and download, generated entirely in your browser
How to use the README Generator
- 1
Enter your project title, tagline and optional repository URL.
- 2
Add badges as label | image URL lines, and list your features and requirements one per line.
- 3
Paste your installation commands and a usage example, choosing the syntax highlighting language for each.
- 4
Fill the options and environment variable tables using pipe-separated columns.
- 5
Pick a licence, toggle the table of contents and contributing section, then copy or download README.md.
About the README Generator
Fill in the fields and this tool assembles a complete README.md — title, tagline, badges, features, requirements, installation and usage code blocks, an options table, an environment variable table, contributing guidance and a licence section.
The table of contents is generated using GitHub's own anchor rules: headings are lowercased, punctuation is stripped, spaces become hyphens and repeated headings get a numeric suffix. That means the links work the moment you commit the file, rather than pointing at anchors that do not exist.
Badge URLs are written into the Markdown as ordinary image links, so nothing is fetched and no image is loaded while you work. The whole document is assembled in your browser and never uploaded, which means you can draft a README for a private or unreleased project without any of it leaving your machine.
Frequently asked questions
What should a good README include?
At minimum: what the project does, how to install it, and a usage example someone can copy. Beyond that, a features list, configuration options, environment variables, contribution guidance and the licence cover almost everything a newcomer needs.
How do GitHub heading anchors work?
GitHub lowercases the heading, removes anything that is not a letter, number, hyphen or space, then turns spaces into hyphens. So "What's New?" becomes #whats-new. Repeated headings get -1, -2 and so on appended.
Why does my table of contents link have two hyphens?
Because the stripped punctuation leaves two spaces behind. "API / Options" loses the slash, leaving "api options", which becomes api--options. That is genuinely what GitHub generates, so the link is correct.
How do I add badges to a README?
A badge is just a Markdown image, so  is all it takes. Enter a label and an image URL here and the Markdown is written for you; the image itself is only loaded once the file is rendered on GitHub.
Which open source licence should I choose?
MIT is the most common permissive choice and is very short. Apache 2.0 adds an explicit patent grant, and GPL v3 requires derivative works to stay open. Pick based on how you want others to be able to reuse the code — and add the full licence text as a separate LICENSE file.
Is anything uploaded when I generate a README?
No. The Markdown is assembled in your browser tab, and badge URLs are written as text rather than requested, so nothing you enter leaves your machine.
Related tools
Changelog Generator
Turn a list of Conventional Commits into a Keep a Changelog release entry. Groups feat, fix, perf and revert into sections and flags breaking changes.
OpenAPI to Markdown Converter
Convert an OpenAPI 3.x or Swagger 2.0 JSON spec into readable Markdown API documentation with parameter, request body and response tables.
EditorConfig Generator
Generate an .editorconfig file with per-language sections for indent style and size, line endings, charset, trailing whitespace and max line length.
Markdown Table to CSV Converter
Convert GitHub-flavoured Markdown pipe tables to CSV or TSV online. Strips bold, code and links, handles escaped pipes and finds every table in a document.