Skip to content

Adco30/CodeExtractor

Repository files navigation

CodeExtractor

CodeExtractor is a lightweight PyQt5 desktop application that lets you navigate a workspace, select any project folder or individual file, filter by file extension, strip comments or imports, and export your source code as Markdown-ready fenced code blocks—all with live progress updates and customizable exclusions stored in a JSON config.


Features

  • Workspace Browser
    Browse and select any directory; your last workspace path is remembered.
  • File-Type Filters
    Choose which extensions to include via dynamic checkboxes per project.
  • Options
    • Remove imports (Java)
    • Remove comments (Python & C-like)
    • Exclude directories or glob patterns
  • Indented View
    Tree-view of files (with optional detailed class/function listings) and “Copy Treemap” to clipboard.
  • Markdown Export
    Generates Markdown with **path/to/file** headers and triple-fenced code blocks, streamed in chunks with progress feedback.
  • Persistence
    All settings, column widths, exclusions, and filter preferences are saved to code_extractor_config.json.

Installation

  1. Install dependencies:
    pip install -r requirements.txt
  2. Clone this repository:
    git clone https://github.com/Adco30/CodeExtractor.git
    cd CodeExtractor
    

Watch the YouTube demo:

Screenshot 2025-04-30 at 12 06 11 AM 2

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages