Skip to content

Advanced Python tool to scan, analyze, and visualize project structures with PDF reports

License

Notifications You must be signed in to change notification settings

cybernahx/project-mapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Mapper

An advanced Python desktop application that scans, analyzes, and visualizes project structures with detailed reports and PDF export capabilities.

Features

  • 📁 Project Scanning: Recursively scan directories and detect project types
  • 🔍 Technology Detection: Automatically identify frameworks and technologies
  • 📊 Visual Reports: Generate beautiful charts and statistics
  • 📄 PDF Export: Create professional PDF reports with graphs
  • 🎨 Modern GUI: Clean and intuitive Tkinter interface
  • 📈 Analytics: File count, extensions, project types, and more
  • 🏷️ Framework Recognition: Detect Django, React, Flutter, Laravel, and 50+ frameworks
  • 💾 Save/Load: Export and import project data as JSON

Technologies Used

  • Python 3.x
  • Tkinter - GUI framework
  • ReportLab - PDF generation
  • Pathlib - File system operations
  • JSON - Data export/import
  • Threading - Background processing

Installation

  1. Clone this repository:
git clone https://github.com/cybernahx/project-mapper.git
cd project-mapper
  1. Install dependencies:
pip install reportlab

Usage

Run the main application:

python Enhanced_GUI_Mapper.py

Or use the basic version:

python Maper.py

Features Guide

  1. Select Folder: Choose the root directory to scan
  2. Scan Projects: Analyze all projects in the directory
  3. View Results: See project list with details
  4. Generate Report: Create PDF with charts and statistics
  5. Export Data: Save scan results as JSON
  6. Load Data: Import previously saved scan results

Supported Frameworks

Web Frameworks

  • React, Vue, Angular, Svelte, Next.js, Nuxt.js
  • Django, Flask, FastAPI, Streamlit
  • Express, NestJS, Laravel, Symfony, Spring

Mobile

  • Flutter, React Native, Ionic, Xamarin
  • Swift, Kotlin

Desktop

  • Electron, Tkinter, PyQt, WPF, WinForms

Game Development

  • Unity, Unreal Engine, Godot, Pygame

And 40+ more frameworks!

PDF Report Features

  • 📊 Pie Charts: Visual breakdown of file types
  • 📈 Bar Charts: Project statistics
  • 📋 Tables: Detailed project listings
  • 🎨 Professional Layout: Clean and organized
  • 📑 Multi-page: Comprehensive reports

Project Structure

project-mapper/
├── Enhanced_GUI_Mapper.py  # Main GUI application
├── Maper.py                # Basic CLI version
├── README.md               # This file
├── LICENSE                 # MIT License
└── .gitignore              # Git ignore rules

Features in Detail

Project Scanner

  • Recursive directory traversal
  • Smart ignore patterns (node_modules, .git, pycache)
  • File extension counting
  • Technology signature detection

GUI Features

  • Progress tracking with percentage
  • Multi-threaded scanning (non-blocking UI)
  • Project filtering and search
  • Export options (PDF, JSON)

Report Generation

  • Automatic chart creation
  • Color-coded categories
  • Summary statistics
  • Timestamp and metadata

Requirements

  • Python 3.7+
  • reportlab
  • tkinter (usually comes with Python)

Configuration

Edit patterns in the code to customize:

  • Ignore patterns
  • Framework signatures
  • Project categories
  • Export formats

Use Cases

  • 📚 Portfolio Management: Track all your projects
  • 🔍 Code Analysis: Understand project structure
  • 📊 Statistics: Analyze technology usage
  • 📄 Documentation: Generate project reports
  • 🏢 Team Overview: Share project inventories

Performance

  • Fast scanning (100+ projects in seconds)
  • Efficient memory usage
  • Progress indicators
  • Cancellable operations

Contributing

Contributions are welcome! Feel free to:

  • Add new framework patterns
  • Improve detection algorithms
  • Enhance UI/UX
  • Submit bug reports
  • Request features

License

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

Developer

Taimur Tariq

Initial version (developed during 2024–2025)

Acknowledgments

  • Built with Python and Tkinter
  • PDF generation powered by ReportLab
  • Inspired by project management tools

Troubleshooting

Large Directories

  • Use ignore patterns for node_modules
  • Scan specific subdirectories
  • Increase timeout limits

PDF Generation Errors

  • Ensure reportlab is installed
  • Check write permissions
  • Verify file paths

GUI Not Responding

  • Scanning runs in background thread
  • Check progress bar for updates
  • Wait for completion message

About

Advanced Python tool to scan, analyze, and visualize project structures with PDF reports

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages