readme-ai is a free, open source documentation & knowledge base project written in Python and released under MIT. It has 3,006 GitHub stars, 296 forks and 57 open issues, and was last pushed 6 days ago. On this registry it ranks #50 of 100 tracked projects in Documentation & Knowledge Base, with 5 head-to-head comparisons available. It gained 13 stars over the last 30 tracked days.

What is readme-ai?

ReadmeAI is a Python command-line tool that automatically generates README files for a codebase by pairing a repository processing engine with large language models, and it is built for developers and maintainers who want structured project documentation without writing it by hand.

What it is

ReadmeAI is a developer tool distributed as a Python CLI named readmeai. It inspects a repository and produces a well-structured, detailed README file from that analysis. It lives in the documentation and developer tooling ecosystem, and it is language agnostic, so it applies across a wide range of languages and frameworks rather than a single stack. It works from either a URL or a local path to a codebase.

The concrete problem it solves is the ongoing cost of writing and maintaining README files by hand. Instead of authoring and updating documentation manually, a user runs one command and receives a generated README. The project states it aims to streamline documentation across all technical disciplines and experience levels, replacing the hand-written README as the default starting point.

Key capabilities

  • Generates a README from a repository URL or local path through readmeai --repository.
  • Switches model backends between OpenAI, Ollama, Anthropic, and Gemini at any time.
  • Customizes output with flags including --header-style, --navigation-style, --badge-style, --badge-color, --logo, --emojis, and --align.
  • Applies intelligent file analysis with customizable .readmeaiignore patterns for smart filtering.
  • Runs in an offline mode that creates README files without using an LLM API service.
  • Provides badge generation and configurable badge colours and styles such as flat-square, for-the-badge, and plastic.
  • Renders metrics with HyperWeave, described as an experimental SVG artifact layer for agents.

Who uses it and how

  • Developers who point the tool at a repository URL or a local path and receive a structured README as output.
  • Maintainers standardizing documentation across multiple projects and repositories, using shared header, navigation, and badge settings.
  • Teams that prefer to run local or self-managed models through Ollama rather than a hosted provider.
  • Users who need documentation generation without any LLM API service, handled by the offline mode.
  • Projects that use the badge generator to produce status and style badges for their README headers.

Getting started

The README shows the tool run from a terminal through the readmeai command, for example readmeai --repository . Full setup details and configuration options are listed in the official documentation at https://eli64s.github.io/readme-ai/.

How it compares

No list of paid products this project replaces is provided in the facts, and no similar tools are named either. On the available evidence, ReadmeAI stands alone in this registry, so no like-for-like comparison can be made from the supplied material.

When to use it — and when not to

A self-hoster must supply access to one of the supported model backends (OpenAI, Anthropic, or Gemini) or run Ollama, unless the offline mode is used to avoid an LLM API service entirely. Teams that do not want to manage provider credentials or a local model runtime should weigh that operating cost before adopting it. The provided README excerpt is partial and does not include installation instructions or an exact package name, so setup depends on the official documentation, and the repository currently carries 57 open issues.

project readme (upstream, from github) — read inline

ReadmeAI Logo

Designed for simplicity, customization, and developer productivity.

readme-ai · stars · forks · version

readme-ai star history rendered by HyperWeave

The metrics above are rendered with HyperWeave — an experimental SVG artifact layer for agents.  Explore →

line break

Quick Links

[!IMPORTANT] Explore the Official Documentation for a complete list of features, customization options, and examples.

line break

Introduction

ReadmeAI is a developer tool that automatically generates README files using a robust repository processing engine and advanced language models. Simply provide a URL or path to your codebase, and a well-structured and detailed README will be generated.

Why Use ReadmeAI?

This project aims to streamline the process of creating and maintaining documentation across all technical disciplines and experience levels. The core principles include:

  • 🔵 Automate: Generate detailed and structured README files with a single command.
  • ⚫️ Customize: Select from a variety of templates, styles, badges, and much more.
  • 🟣 Flexible: Switch between OpenAI, Ollama, Anthropic, and Gemini anytime.
  • 🟠 Language Agnostic: Compatible with a wide range of languages and frameworks.
  • 🟡 Best Practices: Ensure clean and consistent documentation across all projects.
  • 🟢 Smart Filtering: Intelligent file analysis with customizable .readmeaiignore patterns.
  • ⛔️ Offline Mode: Create README files offline, without using a LLM API service.

Demo

Run from your terminal:

readmeai-cli-demo

line break

Features

Customize Your README

Let's begin by exploring various customization options and styles supported by ReadmeAI:

Header Styles
Classic Header >

CLI Command:

$ readmeai --repository https://github.com/eli64s/readme-ai-streamlit \
           --logo custom \
           --badge-color FF4B4B \
           --badge-style flat-square \
           --header-style classic
          
        
Modern Header >

CLI Command:

$ readmeai --repository https://github.com/olliefr/docker-gs-ping \
           --badge-color 00ADD8 \
           --badge-style for-the-badge \
           --header-style modern \
           --navigation-style roman
          
        
Compact Header >

CLI Command:

$ readmeai --repository https://github.com/rumaan/file.io-Android-Client \
           --badge-style plastic \
           --badge-color blueviolet \
           --logo PURPLE \
           --header-style COMPACT \
           --navigation-style NUMBER \
           --emojis solar
          
        

Banner Styles

Console Header >

CLI Command:

$ readmeai --repository https://github.com/emcf/thepipe \
           --badge-style flat-square \
           --badge-color 8a2be2 \
           --header-style console \
           --navigation-style accordion \
           --emojis water
          
        
SVG Banner >

CLI Command:

$ readmeai --repository https://github.com/FerrariDG/async-ml-inference \
           --badge-style plastic \
           --badge-color 43a047 \
           --header-style BANNER
          
        

And More!

Project Overview >

CLI Command:

$ readmeai --repository 'https://github.com/eli64sreadme-ai-streamlit' \
           --badge-style FLAT-SQUARE \
           --badge-color E92063 \
           --header-style COMPACT \
           --navigation-style ACCORDION \
           --emojis RAINBOW \
           --logo ICE
          
        
Custom Logo >

CLI Command:

$ readmeai --repository https://github.com/jwills/buenavista \
           --align LEFT \
           --badge-style FLAT-SQUARE \
           --logo CUSTOM
          
        

Generated Sections & Content

꩜ Expand to view more!

Project Introduction

  • This section captures your project's essence and value proposition.
  • The prompt template used to generate this section can be viewed here.

Features Table

  • Detailed feature breakdown and technical capabilities.
  • The prompt template used to generate this section can be viewed here.

Project Structure

  • Visual representation of your project's directory structure.
  • The tree is generated using pure Python and embedded in a code block.

Project Index

  • Summarizes key modules of the project, which are also used as context for downstream prompts.toml.

Getting Started Guides

  • Dependencies and system requirements are extracted from the codebase during preprocessing.
  • The parsers handle most of the heavy lifting here.

Installation, Usage, & Testing

  • Setup instructions and usage guides are automatically created based on data extracted from the codebase.

Community & Support

  • Development roadmap, contribution guidelines, license information, and community resources.
  • A return button is also included for easy navigation.

Contribution Guides

  • Instructions for contributing to the project, including resource links and a basic contribution guide.
  • Graph of contributors is also included for open-source projects.
line break

Getting Started

Prerequisites

ReadmeAI requires Python 3.10 or higher, and one of the following installation methods:

Requirement Details
• Python ≥3.10 Core runtime
Installation Method (choose one)
• pip Default Python package manager
• pipx Isolated environment installer
• uv High-performance package manager
• docker Containerized environment

Supported Repository Platforms

To generate a README file, provide the source repository. ReadmeAI supports these platforms:

Platform Details
File System Local repository access
GitHub Industry-standard hosting
GitLab Full DevOps integration
Bitbucket Atlassian ecosystem

Supported LLM API Services

ReadmeAI is model agnostic, with support for the following LLM API services:

Provider Best For Details
OpenAI General use Industry-leading models
Anthropic Advanced tasks Claude language models
Google Gemini Multimodal AI Latest Google technology
Ollama Open source No API key needed
Offline Mode Local operation No internet required

Installation

ReadmeAI is available on PyPI as readmeai and can be installed as follows:

 Pip

Install with pip (recommended for most users):

❯ pip install -U readmeai
 Pipx

With pipx, readmeai will be installed in an isolated environment:

❯ pipx install readmeai
 Uv

The fastest way to install readmeai is with uv:

❯ uv tool install readmeai
 Docker

To run readmeai in a containerized environment, pull the latest image from [Docker Hub][dockerhub-link]:

❯ docker pull zeroxeli/readme-ai:latest
 From source
Click to build readmeai from source
  1. Clone the repository:

    ❯ git clone https://github.com/eli64s/readme-ai
    
  2. Navigate to the project directory:

    ❯ cd readme-ai
    
  3. Install dependencies:

    ❯ pip install -r setup/requirements.txt
    

Alternatively, use the [setup script][setup-script] to install dependencies:

 Bash
  1. Run the setup script:

    ❯ bash setup/setup.sh
    

Or, use poetry to build and install project dependencies:

 Poetry
  1. Install dependencies with poetry:

    ❯ poetry install
    

Additional Optional Dependencies

[!IMPORTANT] To use the Anthropic and Google Gemini clients, extra dependencies are required. Install the package with the following extras:

  • Anthropic:

    ❯ pip install "readmeai[anthropic]"
    
  • Google Gemini:

    ❯ pip install "readmeai[google-generativeai]"
    
  • Install Multiple Clients:

    ❯ pip install "readmeai[anthropic,google-generativeai]"
    

Usage

Set your API key

When running readmeai with a third-party service, you must provide a valid API key. For example, the OpenAI client is set as follows:

❯ export OPENAI_API_KEY=<your_api_key>

# For Windows users:
❯ set OPENAI_API_KEY=<your_api_key>
Click to view environment variables for - Ollama, Anthropic, Google Gemini
Ollama

Refer to the Ollama documentation for more information on setting up the Ollama server.

To start, follow these steps:

  1. Pull your model of choice from the Ollama repository:

    ❯ ollama pull llama3.2:latest
    
  2. Start the Ollama server and set the OLLAMA_HOST environment variable:

    ❯ export OLLAMA_HOST=127.0.0.1 && ollama serve
    
Anthropic
  1. Export your Anthropic API key:

    ❯ export ANTHROPIC_API_KEY=
    
Google Gemini
  1. Export your Google Gemini API key:

    ❯ export GOOGLE_API_KEY=
    </details>
    
Using the CLI
Running with a LLM API service

Below is the minimal command required to run readmeai using the OpenAI client:

❯ readmeai --api openai -o readmeai-openai.md -r https://github.com/eli64s/readme-ai

[!IMPORTANT] The default model set is gpt-3.5-turbo, offering the best balance between cost and performance.When using any model from the gpt-4 series and up, please monitor your costs and usage to avoid unexpected charges.

ReadmeAI can easily switch between API providers and models. We can run the same command as above with the Anthropic client:

❯ readmeai --api anthropic -m claude-3-5-sonnet-20240620 -o readmeai-anthropic.md -r https://github.com/eli64s/readme-ai

And finally, with the Google Gemini client:

❯ readmeai --api gemini -m gemini-1.5-flash -o readmeai-gemini.md -r https://github.com/eli64s/readme-ai
Running with local models

We can also run readmeai with free and open-source locally hosted models using the Ollama:

❯ readmeai --api ollama --model llama3.2 -r https://github.com/eli64s/readme-ai
Running on a local codebase

To generate a README file from a local codebase, simply provide the full path to the project:

❯ readmeai --repository /users/username/projects/myproject --api openai

Adding more customization options:

❯ readmeai --repository https://github.com/eli64s/readme-ai \
           --output readmeai.md \
           --api openai \
           --model gpt-4 \
           --badge-color A931EC \
           --badge-style flat-square \
           --header-style compact \
           --navigation-style fold \
           --temperature 0.9 \
           --tree-depth 2
           --logo LLM \
           --emojis solar
Running in offline mode

ReadmeAI supports offline mode, allowing you to generate README files without using a LLM API service.

❯ readmeai --api offline -o readmeai-offline.md -r https://github.com/eli64s/readme-ai
 Docker

Run the readmeai CLI in a Docker container:

❯ docker run -it --rm \
    -e OPENAI_API_KEY=$OPENAI_API_KEY \
    -v "$(pwd)":/app zeroxeli/readme-ai:latest \
    --repository https://github.com/eli64s/readme-ai \
    --api openai
 Streamlit

Try readme-ai directly in your browser on Streamlit Cloud, no installation required.

See the readme-ai-streamlit repository on GitHub for more details about the application.

[!WARNING] The readme-ai Streamlit web app may not always be up-to-date with the latest features. Please use the command-line interface (CLI) for the most recent functionality.

 From source
Click to run readmeai from source
 Bash

If you installed the project from source with the bash script, run the following command:

  1. Activate the virtual environment:

    ❯ conda activate readmeai
    
  2. Run the CLI:

    ❯ python3 -m readmeai.cli.main -r https://github.com/eli64s/readme-ai
    
 Poetry
  1. Activate the virtual environment:

    ❯ poetry shell
    
  2. Run the CLI:

    ❯ poetry run python3 -m readmeai.cli.main -r https://github.com/eli64s/readme-ai
    
line break

Testing

The pytest and nox frameworks are used for development and testing.

Install the dependencies with uv:

❯ uv pip install --dev --group test --all-extras

Run the unit test suite using Pytest:

❯ make test

Using nox, test the app against Python versions 3.10, 3.11, 3.12, and 3.13:

❯ make test-nox

[!TIP] Nox is an automation tool for testing applications in multiple environments. This helps ensure your project is compatible with across Python versions and environments.

line break

Configuration

Customize your README generation with a variety of options and style settings supported such as:

Option Description Default
--align Text alignment in header center
--api LLM API service provider offline
--badge-color Badge color name or hex code 0080ff
--badge-style Badge icon style type flat
--header-style Header template style classic
--navigation-style Table of contents style bullet
--emojis Emoji theme packs prefixed to section titles None
--logo Project logo image blue
--logo-size Logo image size 30%
--model Specific LLM model to use gpt-3.5-turbo
--output Output filename readme-ai.md
--repository Repository URL or local directory path None
--temperature Creativity level for content generation 0.1
--tree-max-depth Maximum depth of the directory tree structure 2

Run the following command to view all available options:

❯ readmeai --help

Visit the Official Documentation for a complete guide on configuring and customizing README files.

line break

Example Gallery

This gallery showcases a diverse collection of README examples generated across various programming languages, frameworks, and project types.

Tech Repository README Project Description
Python README-Python.md readmeai ReadmeAI's core project
Apache Flink README-Flink.md pyflink-poc PyFlink proof of concept
Streamlit README-Streamlit.md readmeai-streamlit Web application interface
Vercel & NPM README-Vercel.md github-readme-quotes Deployment showcase
Go & Docker README-DockerGo.md docker-gs-ping Containerized Golang app
FastAPI & Redis README-FastAPI.md async-ml-inference ML inference service
Java README-Java.md minimal-todo Minimalist To-Do app
PostgreSQL & DuckDB README-PostgreSQL.md buenavista Database proxy server
Kotlin README-Kotlin.md android-client Mobile client application
Offline Mode README-Offline.md litellm Offline functionality demo

Community Contribution

Share Your README Files

We invite developers to share their generated README files in our Show & Tell discussion category. Your contributions help:

  • Showcase diverse documentation styles
  • Provide real-world examples
  • Help improve the ReadmeAI tool

Find additional README examples in our examples directory on GitHub.

line break

Roadmap

  • Release readmeai 1.0.0 with robust documentation creation and maintenance capabilities.
  • Extend template support for various project types and programming languages.
  • Develop Vscode Extension to generate README files directly in the editor.
  • Develop GitHub Actions to automate documentation updates.
  • Add badge packs to provide additional badge styles and options.
    • Code coverage, CI/CD status, project version, and more.

Contributing

Contributions are welcome! Please read the Contributing Guide to get started.


Acknowledgments

A big shoutout to the projects below for their awesome work and open-source contributions:

shields.io simpleicons.org tandpfun/skill-icons astrit/css.gg Ileriayo/markdown-badges Ileriayo/markdown-badges

🎗 License

Copyright © 2023-2025 readme-ai.
Released under the MIT license.

line break

Frequently asked questions

Is readme-ai free to use?

readme-ai is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does readme-ai do?

README file generator, powered by AI.

What is readme-ai written in?

readme-ai is primarily written in Python. Its source is publicly available at https://github.com/eli64s/readme-ai, and it has 3,006 GitHub stars.