Skip to main content

Professional CLI toolkit for Unreal Engine developers - Complete with performance profiling, plugin management, CI/CD generation, and personal branding by gktrk363

Project description

🎮 UnrealMate

Professional CLI Toolkit for Unreal Engine Developers

PyPI Version Python License Downloads

Platform Unreal Engine Status


⚡ Crafted by gktrk363 ⚡

Streamline your Unreal Engine workflow with 30+ powerful CLI commands

🚀 Quick Start📖 Documentation🎯 Features💡 Examples


🌟 What is UnrealMate?

UnrealMate is a comprehensive command-line toolkit designed to supercharge your Unreal Engine development workflow. Whether you're managing Git repositories, analyzing blueprints, profiling performance, or organizing assets, UnrealMate provides intuitive commands that save you hours of manual work.

Why UnrealMate?

  • 30+ Specialized Commands - Purpose-built for Unreal Engine projects
  • 🎨 Beautiful CLI Interface - Cyan/magenta themed with rich formatting
  • Performance Tools - Profile, analyze, and optimize your projects
  • 🔌 Plugin Management - Install and manage plugins via CLI
  • 🏗️ CI/CD Generation - Auto-generate GitHub Actions, GitLab CI, Jenkins
  • ⚙️ Configurable - Customize behavior with .unrealmate.toml
  • 🚀 Production Ready - Stable, tested, and actively maintained

🎉 What's New in v1.0.9

Latest Release - Banner Color & UI Update

  • 🎨 New Look: Updated banner color scheme to Lime Green and Dark Gray
  • Improved: Professional two-tone aesthetic
  • 🐛 Fixed: Version banner display issues

See CHANGELOG.md for complete release history.


📦 Installation

Via pip (Recommended)

pip install unrealmate

Verify Installation

unrealmate version

You should see the beautiful UnrealMate banner! 🎨

Requirements

  • Python: 3.10 or higher
  • OS: Windows, macOS, or Linux
  • Unreal Engine: 4.x or 5.x (optional, for project-specific commands)

✨ Features

🔧 Git Tools

Streamline your Git workflow for Unreal projects

  • Smart Initialization - .gitignore and .gitattributes for UE
  • LFS Setup - Auto-configure Git LFS for large assets
  • Repository Cleanup - Remove unnecessary files safely

📁 Asset Management

Organize and optimize your project assets

  • Asset Scanner - Find all assets with detailed info
  • Smart Organization - Auto-organize by type/category
  • Duplicate Detection - Find and remove duplicate assets

🎯 Blueprint Analysis

Understand and optimize your blueprints

  • Complexity Analysis - Measure blueprint complexity
  • Dependency Mapping - Visualize blueprint relationships
  • Performance Reports - Identify optimization opportunities

⚡ Performance Profiling

Analyze and optimize game performance

  • CPU/GPU Profiler - Parse profiling reports
  • Shader Analyzer - Detect shader complexity issues
  • Memory Auditor - Track asset memory usage

🔌 Plugin Management

Manage Unreal Engine plugins effortlessly

  • Install from Git - Clone and install plugins
  • Enable/Disable - Toggle plugins in .uproject
  • List Plugins - View all installed plugins
  • Safe Removal - Uninstall plugins cleanly

🏗️ CI/CD Generation

Automate your build pipelines

  • GitHub Actions - Generate workflow files
  • GitLab CI - Create .gitlab-ci.yml
  • Jenkins - Generate Jenkinsfile
  • Best Practices - Industry-standard templates

⚙️ Configuration System

Customize UnrealMate to your needs

  • TOML Configuration - .unrealmate.toml support
  • User Preferences - Save your settings
  • Easy Management - Get/set config values
  • Sensible Defaults - Works out of the box

🏥 Project Health

Keep your project in top shape

  • Doctor Command - Comprehensive health checks
  • Issue Detection - Find common problems
  • Recommendations - Get actionable advice
  • Auto-fix - Automatic problem resolution (coming soon)

🎯 Commands

UnrealMate provides 7 command groups with 30+ commands:

Core Commands

unrealmate version          # Show version with beautiful banner
unrealmate doctor           # Run project health checks

Git Commands

unrealmate git init         # Initialize Git with UE-specific config
unrealmate git lfs          # Setup Git LFS for large files
unrealmate git clean        # Clean repository safely

Asset Commands

unrealmate asset scan       # Scan all project assets
unrealmate asset organize   # Auto-organize assets by type
unrealmate asset duplicates # Find duplicate assets

Blueprint Commands

unrealmate blueprint analyze  # Analyze blueprint complexity
unrealmate blueprint report   # Generate detailed reports

Performance Commands ⚡ NEW!

unrealmate performance profile  # Analyze CPU/GPU/Memory
unrealmate performance shaders  # Detect shader issues
unrealmate performance memory   # Track memory usage

Plugin Commands 🔌 NEW!

unrealmate plugin list          # List all plugins
unrealmate plugin install       # Install from Git/local
unrealmate plugin enable        # Enable a plugin
unrealmate plugin disable       # Disable a plugin
unrealmate plugin remove        # Uninstall a plugin

Build Commands 🏗️ NEW!

unrealmate build ci-init        # Generate CI/CD configs
unrealmate build info           # Show project info

Config Commands ⚙️ NEW!

unrealmate config init          # Create config file
unrealmate config show          # Display current config
unrealmate config set           # Set a config value
unrealmate config get           # Get a config value

💡 Usage Examples

Quick Start

# Initialize a new Unreal project with Git
unrealmate git init
unrealmate git lfs

# Check project health
unrealmate doctor

# Scan and organize assets
unrealmate asset scan
unrealmate asset organize

Performance Optimization

# Profile your game
unrealmate performance profile --csv-file profiling_report.csv

# Analyze shaders
unrealmate performance shaders --shader-dir Content/Shaders

# Check memory usage
unrealmate performance memory --content-dir Content

Plugin Management

# List installed plugins
unrealmate plugin list

# Install a plugin from GitHub
unrealmate plugin install https://github.com/user/plugin.git

# Enable a plugin
unrealmate plugin enable MyPlugin

CI/CD Setup

# Generate GitHub Actions workflow
unrealmate build ci-init --platform github

# Generate GitLab CI config
unrealmate build ci-init --platform gitlab

Configuration

# Create config file
unrealmate config init

# Set preferences
unrealmate config set signature.compact_banner true
unrealmate config set signature.show_footer false

# View current config
unrealmate config show

📖 Documentation

Configuration File

UnrealMate uses .unrealmate.toml for configuration:

[signature]
compact_banner = false
show_footer = true

[logging]
level = "INFO"
file_logging = false

[paths]
unreal_engine_path = "C:/Program Files/Epic Games/UE_5.3"

Environment Variables

UNREALMATE_CONFIG_PATH    # Custom config file location
UNREALMATE_LOG_LEVEL      # Override log level

🛠️ Development

For Contributors

# Clone repository
git clone https://github.com/gktrk363/unrealmate.git
cd unrealmate

# Install in development mode
pip install -e .

# Run commands
unrealmate --help

Building from Source

# Install build tools
pip install build twine

# Build package
python -m build

# Install locally
pip install dist/unrealmate-*.whl

🤝 Contributing

Contributions are welcome! Here's how you can help:

  1. Report Bugs - Open an issue with detailed information
  2. Suggest Features - Share your ideas for improvements
  3. Submit PRs - Fix bugs or add features
  4. Improve Docs - Help make documentation better
  5. Share - Tell others about UnrealMate!

See CONTRIBUTING.md for guidelines.


📝 License

UnrealMate is licensed under the MIT License.

See LICENSE file for details.


🙏 Acknowledgments

  • Unreal Engine by Epic Games
  • Typer for amazing CLI framework
  • Rich for beautiful terminal output
  • Community for feedback and support

Special thanks to all Unreal Engine developers who inspired this project!


📊 Project Stats

  • Version: 1.0.9 (Production/Stable)
  • Commands: 30+
  • Python Support: 3.10, 3.11, 3.12
  • Platforms: Windows, macOS, Linux
  • License: MIT
  • Status: Actively Maintained

🔗 Links


💬 Support

Need help? Have questions?

  • 📧 Email: Open an issue on GitHub
  • 💬 Discussions: Use GitHub Discussions
  • 🐛 Bug Reports: Open an issue with details
  • 💡 Feature Requests: Share your ideas

🌟 Star History

If you find UnrealMate useful, please consider giving it a ⭐ on GitHub!


Made with ❤️ for Unreal Engine Developers

⚡ Crafted by gktrk363 ⚡

Streamline your workflow. Build better games.

⬆ Back to Top

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unrealmate-1.0.9.tar.gz (38.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

unrealmate-1.0.9-py3-none-any.whl (40.7 kB view details)

Uploaded Python 3

File details

Details for the file unrealmate-1.0.9.tar.gz.

File metadata

  • Download URL: unrealmate-1.0.9.tar.gz
  • Upload date:
  • Size: 38.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for unrealmate-1.0.9.tar.gz
Algorithm Hash digest
SHA256 29c3d5309d9f595e30df5fc7fd0a16e22146eeda3db7ab63a66ae482223ac312
MD5 3a2da67f9d24bb78bce767151a8e704d
BLAKE2b-256 5d9ea7f72f9c5beb3979fce9cfd1c2260bb583f012cb93bbfffa98606eedb430

See more details on using hashes here.

File details

Details for the file unrealmate-1.0.9-py3-none-any.whl.

File metadata

  • Download URL: unrealmate-1.0.9-py3-none-any.whl
  • Upload date:
  • Size: 40.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for unrealmate-1.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 cd8755b76df7546f13c31e025eb7b880784543ae3d91ff145815f2ad2146d92b
MD5 ef1cc2c1bf1aace04e2d1b13bbbfba98
BLAKE2b-256 5b60d2c8e1a19ff8ee37a0c25bfc9127d5d7da81ce2c835cb9b041e681582faf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page