Dokugen  by samueltuoyo15

AI-powered CLI for automated README generation and Git commits

Created 1 year ago
314 stars

Top 85.7% on SourcePulse

GitHubView on GitHub
Project Summary

Dokugen automates the creation and updating of README.md files, targeting developers who want to streamline project documentation. It analyzes codebases and uses AI to generate professional README content and conventional commit messages, saving time and improving project clarity.

How It Works

Dokugen employs a client-server architecture where CLI clients (TypeScript, Python) and a VSCode extension interact with a Node.js/Express.js backend. This API leverages Google Gemini for AI-powered README generation and conventional commit messages, analyzing codebases and intelligently updating documentation while preserving manual edits.

Quick Start & Requirements

  • Prerequisites: Node.js (v18+), pnpm (recommended), Python (3.8+), Go (1.24+).
  • Setup: Monorepo structure; pnpm install at the root installs all dependencies.
  • Server: Requires a .env file with API keys (Google Gemini, Supabase) and runs via pnpm start.
  • Clients: Python CLI (pip install -e .), TypeScript CLI (pnpm install -g .).
  • Standalone Binaries: Experimental binaries are available for Windows, macOS (Silicon/Intel), and Linux (x64).
  • Docs: No direct quick-start or demo links are provided in the README.

Highlighted Details

  • Interactive console menu (dokugen command).
  • Smart updates preserve manual README edits while regenerating auto-documented sections.
  • AI-generated Conventional Commit messages based on staged files.
  • 70-90% upload size compression for analyzing larger projects.
  • Language agnostic support for numerous programming languages.
  • VSCode extension integration for seamless workflow.

Maintenance & Community

  • A contribution guide is available for developers looking to contribute.
  • Author: Samuel Tuoyo (LinkedIn and X/Twitter links provided).
  • No community channels (e.g., Discord, Slack) are mentioned.

Licensing & Compatibility

  • MIT License. This license is permissive and generally compatible with commercial use and closed-source linking.

Limitations & Caveats

Standalone binaries are explicitly marked as experimental and unstable. Users encountering issues are advised to use the Node.js or Python client packages instead.

Health Check
Last Commit

2 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
0 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.