Skip to main content

Automatically generate high-quality README for your application

Project description

Dokugen (Python Client)

Demo GIF

Sponsor Dokugen

Dokugen is a lightweight, AI-powered CLI tool that automatically generates and maintains README.md files and LICENSE files for your projects. It scans your codebase, understands what your project does, and produces clean, professional documentation, so you don't have to.


Quick Start

Installation

Install Dokugen globally using uv (recommended) or pip:

uv tool install dokugen
# or
pip install dokugen

Usage

1. Launch the Interactive Assistant

Simply run dokugen in your project folder to open the interactive setup assistant. From here, you can generate a README, update existing docs, generate a LICENSE file, revert backups, or run AI-assisted Git commits.

dokugen

Note: If dokugen command is not in your PATH, you can also run it via Python:

python -m dokugen

2. Standalone Commands

Generate README

Scan your project files and construct a new README.md.

dokugen generate

Generate README with a Custom Template

Use any public README.md file as a structure template.

dokugen generate --template https://raw.githubusercontent.com/username/repo/main/README.md

Smart Update README

Intelligently rebuilds auto-generated sections (tech stack, API details, file layout) while keeping your custom text, notes, and badges intact.

dokugen update

Generate LICENSE File

Instantly scaffold a LICENSE file for your project. Dokugen will prompt you to pick from the most common open-source licenses, pre-filled with your name and the current year.

dokugen license

Supported licenses:

  • MIT, Simple and permissive. Great for most open-source projects.
  • ISC, Same as MIT but shorter.
  • Apache 2.0, Permissive with explicit patent rights grant.
  • GNU GPLv3, Strong copyleft. Derivatives must also be open source.
  • BSD 2-Clause, Permissive. Requires copyright notice preservation.
  • Unlicense, Public domain. No rules, no conditions.

AI Git Commit (aic)

Analyze your staged files, generate a Conventional Commit message automatically, commit, and optionally push.

dokugen aic
# or push immediately after committing
dokugen aic --push

Safety Backup Revert (revert)

Accidentally generated something you didn't like? Restore your previous README.md instantly from the automatic backup.

dokugen revert

Features

  • Interactive Menu: Run dokugen with no arguments to navigate all tool actions through a beautiful console prompt, perfect for both new and experienced developers.
  • Smart README Updates: Re-run generation without losing your manual modifications. Only auto-generated blocks get updated; your custom content stays untouched.
  • LICENSE Generator: Pick from 6 popular open-source licenses and have a properly formatted LICENSE file created instantly, pre-filled with your author name and year.
  • AI-Powered Commits: Automatic staging and conventional commit message generation via Google Gemini, keeps your commit history clean and consistent.
  • Compressed Uploads: Efficiently packages codebases with 70–90% upload size compression to support analyzing larger projects without hitting API size limits.
  • Language & Framework Agnostic: Works out of the box with any programming language or framework (JavaScript, TypeScript, Python, Rust, Go, Java, PHP, C++, Django, React, etc.). You don't need Python or Node.js to be your codebase's main language; you can simply install Dokugen globally using Python (pip/uv) or Node (npm/pnpm/yarn), and run it in any directory.
  • Custom Templates: Use any public GitHub README as a structural template for your generated docs.

System Architecture

Dokugen uses a client-server architecture. The Python CLI sends your project data to a backend API, which uses Google Gemini to generate your README or commit messages. User profile data is stored securely in Supabase.

flowchart LR
  PythonCLI["Python CLI (dokugen)"]
  API["API Server (Node.js / Express)"]
  AI["AI Model (Google Gemini)"]
  DB[("Supabase Database")]

  PythonCLI --> API
  API --> AI
  API --> DB

  style PythonCLI fill:#1f3a60,stroke:#3b82f6,stroke-width:2px,color:#fff
  style API fill:#4a1525,stroke:#ec4899,stroke-width:2px,color:#fff
  style AI fill:#5c1d24,stroke:#ef4444,stroke-width:2px,color:#fff
  style DB fill:#022c22,stroke:#10b981,stroke-width:2px,color:#fff

Contributing

Contributions are welcome! Read our Contribution Guide to get started.

License

This project is licensed under the MIT License, see the LICENSE file for details.

Author


License: MIT Open Source Love Maintenance PyPI Python Made in Nigeria

Readme was generated by Dokugen

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dokugen-14.0.6.tar.gz (9.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dokugen-14.0.6-py3-none-any.whl (31.4 kB view details)

Uploaded Python 3

File details

Details for the file dokugen-14.0.6.tar.gz.

File metadata

  • Download URL: dokugen-14.0.6.tar.gz
  • Upload date:
  • Size: 9.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dokugen-14.0.6.tar.gz
Algorithm Hash digest
SHA256 9de28bd1227125e4274f85ad5f0f877303aba3d85e0d9335728e06e7d9f1d032
MD5 4fe3a310f049830eebc0e9fc47ec46e1
BLAKE2b-256 2fc3a9832c94fe5fc2fbafceddc908bbfeeb8595c1e006122d46121288a0e9a8

See more details on using hashes here.

File details

Details for the file dokugen-14.0.6-py3-none-any.whl.

File metadata

  • Download URL: dokugen-14.0.6-py3-none-any.whl
  • Upload date:
  • Size: 31.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dokugen-14.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 18521bedeca863f348c2efc1dd2889e39817551357e40f0b6463ecbc04d8f257
MD5 3ea50fd3c71f57fbaea0c0acbe1ef00f
BLAKE2b-256 f9c5f9f35b75481485dd6521d0fa23133929249fbe86f06fcb2a710cfc1333b1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page