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.
- 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 tocode_extractor_config.json
.
- Install dependencies:
pip install -r requirements.txt
- Clone this repository:
git clone https://github.com/Adco30/CodeExtractor.git cd CodeExtractor