Download the PHP package tito10047/progressive-image-bundle without Composer

On this page you can find all versions of the php package tito10047/progressive-image-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package progressive-image-bundle

Progressive Image Bundle

Build Status PHP-CS-Fixer PHPStan Latest Stable Version PHP Version Symfony Version Symfony Style Coverage Status

High-performance, Fully Responsive Images for Symfony.

This bundle handles everything you need for modern image management. From fully responsive images with Tailwind-like selectors, to blur placeholders, to content-addressed generation of every required size, on local disk or any cloud storage Flysystem supports.

🌍 Production Ready: This bundle is successfully deployed and running in production on live websites such as mostka.sk and vsetkosada.sk.

⚠️ Version 2.0 is experimental. It's a from-scratch DDD rewrite of the Variant pipeline and hasn't been tagged as a stable release yet — expect breaking changes before a final 2.0.0 tag.

📖 Full documentation: pgi.blue

✅ Requirements


✨ Key Features


🎨 Usage

Simply use the Twig component. The bundle takes care of everything — it automatically calculates the required image dimensions for each breakpoint, resizes the original, and generates all necessary variants on the fly.

📱 Selector Examples (Breakpoint Assignment)

The bundle supports flexible size assignment based on breakpoints you know from Tailwind or Bootstrap. For each selector, it automatically calculates the final pixel dimensions based on the container width defined by your CSS framework (Bootstrap or Tailwind) and generates the corresponding image.

Selector Meaning Resulting behavior
6 6 grid columns on all breakpoints Width: 50% of container, original aspect ratio
md:6 6 grid columns from md breakpoint From md up: 50% of container, below md: full width
lg:4@landscape 4 columns from lg with 16:9 aspect ratio From lg up: 33.3% of container, cropped to 16:9 ratio
xs:12@square 12 columns on xs with 1:1 aspect ratio Full width container, cropped to 1:1 square
xxl:[430x370] Explicit dimensions for a specific breakpoint Exact size 430x370px on xxl and larger
xl:[100%]@landscape 100% container width with landscape aspect ratio Full width container, cropped to 16:9 ratio
lg:4@square\|circle 4 columns on lg with a custom modifier Applies the circle modifier's config (e.g. a filter set)

What is a "container"? The bundle automatically detects your CSS framework (Bootstrap or Tailwind) and extracts the exact container widths for each breakpoint from its configuration. It then uses these values to calculate the precise pixel dimensions for your images.

Full syntax reference: The Twig Component → Sizes syntax.


🚀 Advanced Features

Point of Interest (PoI) Cropping

Define a focal point as pixel coordinates in the original image (e.g., pointInterest="544x320") so the most important subject stays in frame regardless of the target aspect ratio. The bundle finds the largest region of the original that matches the target ratio, centres it on the focal point, and scales the result — never slicing at original resolution. → Cookbook: Point of Interest Cropping

Smart Upscaling Protection

The bundle never generates an image larger than the original. If you need 1200px but the original is only 1000px, the bundle uses the original and prevents blurring.

Stream-based Metadata

To retrieve dimensions and Blurhash, the bundle doesn't load the entire image into RAM (no 20MB files in memory). It uses PHP streams to read only the necessary header bytes.

Content-Addressed Variant Generation

Every generated file is identified by an HMAC hash of its source + processing spec — the same request from any request or worker produces the same file, with no coordination needed beyond a short-lived lock. Choose when generation actually runs: inline in the request (sync), deferred to kernel.terminate, or asynchronously via Symfony Messenger (async, the default). → Variant Pipeline → Overview

Custom Modifiers & Filters

Extend the selector logic with your own modifiers (e.g., lg:4|circle), or add your own crop/resize/watermark filters via filter_sets. You can implement custom logic and even prioritize modifiers to override default behavior. → Cookbook: Custom Modifier


📦 Installation

See Getting Started for routing, cache pool, and full setup steps.


⚙️ Optional Configuration

Every available option is documented in the Configuration Reference.


📄 License

MIT License. See LICENSE for more information.


📚 Documentation

📖 Full documentation site: pgi.blue

Section What's in it
Guide Installation, full configuration reference, the Twig component, responsive grid & ratios, caching, architecture
Variant Pipeline How images actually get generated: content-addressed variants, the three generation strategies, filters/formats/quality, storage
Cookbook Step-by-step recipes for extending the bundle: custom storage, image engine, post-processors, path decorators, URL generators, modifiers, async workers, point-of-interest cropping, serving behind nginx
API Reference Every interface, model, route and command, as a quick lookup table

The docs source lives in VitePress — run npm install && npm run dev inside that directory to preview changes locally.


📜 Changelog

All notable changes to this project are documented in CHANGELOG.md.


All versions of progressive-image-bundle with dependencies

PHP Build Version
Package Version
Requires php Version >=8.3
intervention/image Version ^4.2
kornrunner/blurhash Version ^1.2
league/flysystem Version ^3.35
symfony/asset Version ^6.4|^7.4|^8.1
symfony/framework-bundle Version ^6.4|^7.4|^6.4|^7.4|^8.1
symfony/lock Version ^6.4|^7.4|^8.1
symfony/process Version ^6.4|^7.4|^8.1
symfony/stimulus-bundle Version ^2.31|^3.3
symfony/translation Version ^6.4|^7.4|^8.1
symfony/twig-bundle Version ^6.4|^7.4|^8.1
symfony/ux-twig-component Version ^2.31|^3.0
symfony/web-link Version ^6.4|^7.4|^8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package tito10047/progressive-image-bundle contains the following files

Loading the files please wait ...