Skip to content

PrajwalK44/doc-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

40 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

DocGen ๐Ÿš€

An intelligent, AI-powered code documentation generator that transforms your codebase into comprehensive, professional documentation with just a few clicks.

Live Demo GitHub

๐Ÿ“‹ Table of Contents

๐ŸŽฏ Project Overview

DocGen AI revolutionizes the way developers approach code documentation. By leveraging advanced AI language models, it automatically analyzes your codebase and generates:

  • Comprehensive Documentation: Detailed explanations of code functionality and purpose
  • Intelligent Inline Comments: Context-aware comments that enhance code readability
  • Professional README Files: Well-structured project documentation following best practices
  • Interactive Previews: Real-time markdown editing and preview capabilities

Problem Statement

Many developers struggle with creating and maintaining up-to-date documentation, leading to poor code maintainability and reduced team productivity. DocGen AI solves this by automating the documentation process while maintaining high quality and relevance.

Solution

Our AI-powered platform analyzes code structure, understands context, and generates human-readable documentation that evolves with your codebase.

๐ŸŒ Live Application

๐Ÿ”— Access DocGen

Try our live demo with sample repositories or upload your own projects to experience the power of AI-driven documentation generation.

๐Ÿ› ๏ธ Technology Stack

Frontend Technologies

Technology Purpose Version
React UI Framework 18.2+
TypeScript Type Safety 4.9+
TailwindCSS Styling 3.3+
Vite Build Tool 4.4+

Backend Technologies

Technology Purpose Version
FastAPI API Framework 0.104+
Python Backend Language 3.8+
Mistral AI LLM Integration Latest
Uvicorn ASGI Server 0.23+
Langgraph Agentic Workflow 0.4.9

Development & Deployment

Tool Purpose
Vercel Frontend Deployment
Render Backend Deployment

โœจ Features

๐Ÿค– AI-Powered Documentation

  • Smart Code Analysis: Advanced parsing and understanding of code structure
  • Context-Aware Generation: Documentation that understands your code's purpose and flow
  • Multi-Language Support: Works with Python, JavaScript, TypeScript, Java, and more

๐Ÿ“ Documentation Types

  • README Generation: Professional project documentation with proper formatting
  • Inline Comments: Intelligent code commenting for better readability
  • API Documentation: Automatic endpoint documentation for web APIs
  • Code Summaries: High-level overviews of complex codebases

๐Ÿ”ง Input Flexibility

  • GitHub Integration: Direct repository analysis via GitHub URLs
  • File Upload: Support for ZIP archives and individual files
  • Batch Processing: Handle multiple files and directories simultaneously

๐ŸŽจ User Experience

  • Interactive 3D UI: Modern interface with engaging visual elements
  • Real-time Preview: Live markdown editing and preview
  • Customizable Output: Multiple documentation styles and formats
  • Export Options: Download as ZIP, copy to clipboard, or direct integration

โšก Performance & Reliability

  • Fast Processing: Optimized algorithms for quick documentation generation
  • Scalable Architecture: Handles projects of any size
  • Error Handling: Robust error management and user feedback
  • Secure Processing: Safe handling of code with privacy protection

๐Ÿš€ Setup & Installation

Prerequisites

Ensure you have the following installed:

Installation

1. Clone and Setup Backend

# Clone the repository
git clone https://github.com/yourusername/docgen-ai.git

# Navigate to backend directory
cd backend

# Create virtual environment
python -m venv venv

# Activate virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

2. Setup Frontend

# Navigate to frontend directory
cd frontend/docGen

# Install dependencies
npm install

3. Environment Configuration

Create a .env file in the backend directory:

# Required Configuration
MISTRAL_API_KEY=your_mistral_api_key_here
GROQ_API_KEY=your_groq_api_key_here

#### 4. Start the Application

**Terminal 1 - Backend:**
```bash
cd backend
source venv/bin/activate  # On Windows: venv\Scripts\activate
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Terminal 2 - Frontend:

cd frontend/docGen
npm start

5. Access the Application

๐Ÿ“– Usage Guide

Basic Workflow

  1. ๐Ÿ”— Input Source

    • Paste a GitHub repository URL, or
    • Upload a ZIP file containing your project
  2. ๐Ÿค– Generate Documentation

    • Click "Generate Documentation"
    • AI analyzes your code structure
    • Documentation is generated automatically
  3. ๐Ÿ‘€ Review Results

    • Use the interactive preview to review generated content
    • Make edits directly in the markdown editor
    • Real-time preview updates as you type
  4. ๐Ÿ“ฅ Export Documentation

    • Download as ZIP file
    • Copy markdown to clipboard
    • Integrate directly into your repository

๐Ÿ“š API Documentation

Core Endpoints

Generate Documentation

POST /generate
Content-Type: application/json

{
  "repo_url": "https://github.com/username/repository",
  "preferences": {
    "style": "detailed",
    "include_comments": true,
    "output_format": "markdown"
  }
}

Generate and Download

POST /api/v1/generate-and-download
Content-Type: application/json

{
  "repo_url": "https://github.com/username/repository",
  "preferences": {
    "style": "standard",
    "include_readme": true,
    "add_inline_comments": true
  }
}

๐Ÿ“ธ Screenshots

Landing Page

Landing Page Modern, interactive landing page with 3D elements and clear call-to-action

Documentation Generation Interface

Generation Interface Intuitive interface for inputting repositories and configuring generation options

Live Preview & Editor

Markdown Editor Markdown Preview Real-time markdown preview with editing capabilities

๐Ÿ‘ฅ Team

Core Contributors

Prathamesh Joshi
Project Lead & Backend
๐Ÿ”— GitHub
Prajwal Kulkarni
Frontend & UI/UX
๐Ÿ”— GitHub

Individual Contributions

๐Ÿ‘จโ€๐Ÿ’ป Prathamesh Joshi - Project Lead & Backend Developer

  • Architecture Design: Designed the overall system architecture and API structure
  • Backend Development: Implemented FastAPI server and core business logic
  • AI Integration: Integrated Mistral AI and developed prompt engineering strategies
  • DevOps: Set up CI/CD pipelines and deployment infrastructure
  • Code Review: Maintained code quality standards and conducted peer reviews

๐ŸŽจ Prajwal Kulkarni - Frontend Developer & UI/UX Designer

  • Frontend Architecture: Built the React application with TypeScript and modern tooling
  • UI/UX Design: Created the modern, interactive user interface with 3D elements
  • Component Development: Developed reusable React components and hooks
  • Responsive Design: Ensured mobile-first responsive design implementation
  • User Experience: Conducted user testing and iterative design improvements

๐Ÿš€ Future Improvements

Phase 1: Advanced AI Enhancements

๐Ÿค– Intelligent Code Analysis & Automation

  • Automatic Code Refactoring: Integrate AI-powered suggestions for code optimization, performance improvements, and best practice adherence
  • Context-Aware Documentation: Generate comprehensive docstrings, README files, and technical documentation that understands project context and dependencies
  • Smart Code Summaries: Provide intelligent summaries for entire codebases, functions, and complex logic flows

Phase 2: Code Quality & Security

๐Ÿ”’ Comprehensive Code Assessment

  • Static Analysis Integration: Implement advanced static analysis tools to detect potential vulnerabilities, code smells, and security issues automatically
  • Security-Focused Auditing: Add specialized security scanning with detailed vulnerability reports and remediation suggestions
  • Code Quality Metrics: Generate comprehensive quality scores with actionable improvement recommendations

Phase 3: Visualization Improvements

๐Ÿ“Š Enhanced Code Understanding

  • Interactive Architecture Diagrams: Generate dynamic system architecture diagrams, dependency trees, and data flow visualizations
  • Function-Level Call Graphs: Create detailed function interaction maps and execution flow diagrams
  • Embedded Interactive Elements: Add clickable, explorable diagrams directly within documentation and code reviews

Phase 4: Developer Collaboration

๐Ÿ‘ฅ Team-Centric Features

  • Collaborative Documentation: Enable real-time collaborative editing with commenting and feedback systems for generated documentation
  • GitHub Integration Enhancement: Deep integration with GitHub for automated PR comments, inline code annotations, and review workflows
  • Team Knowledge Sharing: Create shared repositories of code insights, patterns, and organizational best practices

Phase 5: Automation & Integration

โš™๏ธ Seamless Workflow Integration

  • CI/CD Pipeline Integration: Automate documentation updates through GitHub Actions, GitLab CI, and other popular CI/CD platforms
  • Auto-Generated Technical Documentation: Create comprehensive wikis, API documentation, and README files automatically from analyzed codebases
  • Cross-Platform Integration: Support for multiple version control systems, project management tools, and development environments

Advanced Features Pipeline

๐Ÿ”ฎ Next-Generation Capabilities

  • Multi-Language Code Analysis: Expand support beyond current languages to include emerging technologies and frameworks
  • AI-Powered Code Suggestions: Provide intelligent code completion and optimization suggestions based on project patterns
  • Custom Integration APIs: Allow teams to build custom workflows and integrations tailored to their specific development processes
  • Performance Analytics: Track code quality improvements over time with detailed metrics and trend analysis
  • Enterprise Security Features: Add advanced authentication, audit logging, and compliance reporting for enterprise environments

This roadmap focuses on transforming the platform from a documentation tool into a comprehensive AI-powered development assistant that enhances every aspect of the software development lifecycle.

๐Ÿค Contributing

We welcome contributions from developers of all skill levels! Here's how you can help make DocGen AI even better.

Ways to Contribute

  • ๐Ÿ› Report Bugs: Found an issue? Let us know!
  • โœจ Suggest Features: Have ideas for improvements?
  • ๐Ÿ“– Improve Documentation: Help make our docs clearer
  • ๐Ÿงช Write Tests: Help us maintain quality
  • ๐Ÿ’ป Submit Code: Fix bugs or implement features

Getting Started

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes: Follow our coding standards
  4. Add tests: Ensure your changes are well-tested
  5. Commit changes: git commit -m 'Add amazing feature'
  6. Push to branch: git push origin feature/amazing-feature
  7. Open a Pull Request: Describe your changes

โญ Star us on GitHub if DocGen AI helps you create better documentation! โญ

Made with โค๏ธ by Team ByteBlazers

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •