twoh/twoh_tiny_png

Optimize your TYPO3 Images using the TinyPNG API

Fund package maintenance!
twohreichel

Installs: 24

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:typo3-cms-extension

pkg:composer/twoh/twoh_tiny_png

1.0.9 2025-12-18 15:27 UTC

This package is auto-updated.

Last update: 2025-12-18 15:28:29 UTC


README

Optimize your TYPO3 images automatically using the TinyPNG API

TYPO3 12 TYPO3 13 PHP 8.x License: GPL v2

📋 Requirements

Requirement Version
PHP >= 8.2
Composer >= 2.4
TYPO3 13.x

🔑 Get Your TinyPNG API Key

  1. Visit TinyPNG Developers
  2. Enter your Full Name
  3. Enter your E-Mail
  4. Receive your API Key

🚀 Installation & Setup

Extension Setup

  1. Install the extension via Composer:

    composer require twoh/twoh_tiny_png
  2. Include the extension in your TypoScript ROOT Template

  3. Configure the following TypoScript settings:

    • Set your API Key
    • Create a Backend folder for TinyPNG records
    • Set the PID of your backend folder
    • (Optional) Set Width for image resizing on upload (height is calculated automatically)

Scheduler Setup (Bulk Optimization)

  1. Create a new Scheduler Task
  2. Select TinyPNG Bulk Compression Command
  3. Start the cron job

⚠️ Note: The cron may take longer depending on the number of images.

⚙️ Configuration

Ignore Specific Folders

To exclude images from specific folders, add them to your TypoScript Constants (comma-separated):

ignoreImagesByFolderName = {$plugin.tx_twohtinypng.settings.ignoreImagesByFolderName}

File Upload Process

The extension hooks into the File Upload Process and automatically compresses images on upload.

🛠️ Development

Code Quality with PHP CS Fixer

This extension uses PHP CS Fixer for code style enforcement following TYPO3 best practices.

Command Description
composer cs:fix Auto-fix code style issues
composer cs:check Check for violations (dry-run)

👥 Authors

Name Role Contact
Andreas Reichel Developer a.reichel91@outlook.com
Igor Smertin Developer igor.smertin@web.de

📚 Documentation

For detailed documentation, visit: TYPO3 Documentation

💖 Support This Project

If you find this extension helpful, please consider supporting its development! Your sponsorship helps maintain and improve this project.

Sponsor on GitHub

Every contribution, no matter the size, is greatly appreciated and helps ensure the continued development of this extension. Thank you for your support! 🙏

🐛 Issues & Support

Found a bug or have a feature request? Please open an issue on GitHub.

📄 License

This project is licensed under the GPL-2.0-or-later license.