Metadata-Version: 2.1
Name: print-project
Version: 2.2.2
Summary: Directory Content Analysis Tool - Extract and analyze source code files across project structures
Author-email: smaxiso <smaxiso@users.noreply.github.com>
License: MIT License
Project-URL: Homepage, https://github.com/smaxiso/print-project
Project-URL: Repository, https://github.com/smaxiso/print-project
Project-URL: Issues, https://github.com/smaxiso/print-project/issues
Project-URL: Changelog, https://github.com/smaxiso/print-project/blob/master/docs/CHANGELOG.md
Project-URL: Documentation, https://github.com/smaxiso/print-project/blob/master/README.md
Project-URL: Bug Reports, https://github.com/smaxiso/print-project/issues
Project-URL: Source Code, https://github.com/smaxiso/print-project
Keywords: code-analysis,directory-scanner,documentation,source-code,project-analysis
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Documentation
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Filesystems
Classifier: Topic :: Utilities
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: chardet>=3.0.4
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: black>=21.0; extra == "dev"
Requires-Dist: flake8>=3.8; extra == "dev"
Requires-Dist: mypy>=0.800; extra == "dev"

# print-project

A comprehensive Python CLI tool for analyzing and extracting the contents of source code files across a project directory structure, outputting them into a single organized document for easier review and analysis.

## ⚡ Installation

```bash
pip install print-project
```

## 🚀 Quick Start

```bash
# Analyze current directory
print-project

# Analyze specific project
print-project -f /path/to/project

# Show progress during analysis
print-project --console

# Alternative command name
analyze-project --help
```

## ✨ Features

- **Recursive Directory Scanning**: Analyzes entire project structures including subdirectories
- **File Type Filtering**: Include/exclude files by extension or specific filenames
- **Smart Binary Detection**: Automatically skips binary files while allowing trusted text extensions
- **Directory Tree Generation**: Creates visual directory structure representation
- **Configurable Output**: Customizable output formatting with summary statistics
- **Size Limits**: Configurable maximum file size processing limits
- **Flexible Configuration**: INI-based configuration with command-line overrides

## 💡 Usage Examples

```bash
# Basic usage
print-project                                    # Analyze current directory
print-project -f /path/to/project               # Analyze specific directory
print-project --console                         # Show console output

The tool uses a `config.ini` file for default settings. Config file locations:

- Current working directory
- `~/.print-project/config.ini` (user config)
- `/etc/print-project/config.ini` (system config - Unix/Linux)
- `%APPDATA%/print-project/config.ini` (system config - Windows)

## 📄 Output

The tool generates a `.txt` file containing:

1. **Directory Tree**: Visual representation of the project structure
2. **File Analysis**: Content of each processed file with:
   - File path and metadata
   - Line numbers
   - Syntax highlighting markers
3. **Summary Statistics**:
   - Total files processed
   - Files skipped (with reasons)
   - Processing time and performance metrics

## 🎯 Use Cases

- **Code Reviews**: Generate comprehensive project snapshots
- **Documentation**: Create detailed project overviews
- **Analysis**: Understand project structure and content
- **Migration**: Prepare project content for analysis or transfer
- **AI/LLM Input**: Generate context-rich project representations

## 🔄 Updates

```bash
# Upgrade to latest version
pip install --upgrade print-project

# Check current version
print-project --help  # Version shown in help text
```

## 🌐 Cross-Platform Compatibility

Works identically on:
- ✅ **Windows**
- ✅ **macOS** 
- ✅ **Linux**

## 📚 Links

- **Source Code**: [GitHub Repository](https://github.com/smaxiso/print-project)
- **Issues**: [Bug Reports & Feature Requests](https://github.com/smaxiso/print-project/issues)
- **Changelog**: [Version History](https://github.com/smaxiso/print-project/blob/master/docs/CHANGELOG.md)
- **Contributing**: [Development Guide](https://github.com/smaxiso/print-project/blob/master/docs/CONTRIBUTING.md)

## 📝 License

MIT License - see the [repository](https://github.com/smaxiso/print-project) for details.
