{"id":15045104,"url":"https://github.com/quazardous/imagestack-bundle","last_synced_at":"2026-02-02T14:08:07.990Z","repository":{"id":62532046,"uuid":"171701651","full_name":"quazardous/imagestack-bundle","owner":"quazardous","description":"A PHP image bundle for Symfony 4 with on the fly thumbnail and watermark","archived":false,"fork":false,"pushed_at":"2024-12-18T15:43:03.000Z","size":28,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-22T02:25:59.356Z","etag":null,"topics":["image-processing","symfony-bundle","symfony4","thumbnailer","thumbnails","watermark"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/quazardous.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-02-20T15:48:27.000Z","updated_at":"2024-12-18T15:41:50.000Z","dependencies_parsed_at":"2022-11-02T14:32:35.188Z","dependency_job_id":null,"html_url":"https://github.com/quazardous/imagestack-bundle","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quazardous%2Fimagestack-bundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quazardous%2Fimagestack-bundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quazardous%2Fimagestack-bundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quazardous%2Fimagestack-bundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/quazardous","download_url":"https://codeload.github.com/quazardous/imagestack-bundle/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238777977,"owners_count":19528817,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["image-processing","symfony-bundle","symfony4","thumbnailer","thumbnails","watermark"],"created_at":"2024-09-24T20:51:27.720Z","updated_at":"2025-10-29T05:32:06.064Z","avatar_url":"https://github.com/quazardous.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ImageStack Bundle\n\nA PHP image serving framework.\n\nThe main goal is to provide a robust framework to create an \"on the fly\" image thumbnailer generator similar to [imagecache](https://www.drupal.org/project/imagecache) / [image style](https://www.drupal.org/docs/8/core/modules/image/working-with-images) in [Drupal](https://www.drupal.org/).\n\nYou can also use it to build a singlepoint multipurpose proxy server on top of a \"complex\" / legacy(ish) / not-yet-migrated images structure.\n\nHere is a [Symfony 4](https://symfony.com/4) bundle for [ImageStack](https://github.com/quazardous/ImageStack).\n\n## Installation\n\n    composer require quazardous/imagestack-bundle\n\n## Config\n\nsee [Resources/doc/index.rst](https://github.com/quazardous/imagestack-bundle/blob/master/Resources/doc/index.rst)\n\n## Usage\n\nThe above config will let you have a `./images/` private folder hold original images and serves them from `images/...`.\n\nIt defines some thumbnail rules and activates images optimizers.\n\nSay you need to display `./images/foo/cool_image.jpg` with thumbnail style.\n\nJust hit `images/style/thumb/foo/cool_image.jpg` and voilà !\n\nBehind the curtain, Imagestack we generate and optimize `images/style/thumb/foo/cool_image.jpg`, store it in `./public/images/style/thumb/foo/cool_image.jpg` and serve it to your browser.\n\nSo next HTTP call will be statically serverd.\n\n## Advanced usage\n\nWith **Imagestack** you can stack components like bricks.\n\nSay you need to serve images from your new CMS but also images from old stuff you have imported \"as it\" with heteroclite image sources...\n\nYou can build a stack with a sequential image backend wich will try to fetch given path from different backends including \"legacy\" HTTP Proxy backends.\n\nYou can of course internally rewrite the path with \"kitchen rules\" to fetch the legacy images.\n\n## Twig\n\nImagestack has a Twig filter and function `imagestack`.\n\n```html.twig\n...\n\u003cimg src=\"{{ 'foo/cool_image.jpg'|imagestack('style/thumb') }}\"/\u003e\n...\n```\n\n## Changelog\n\n  - 1.3: hello Github\n  - 1.0: hello SF4\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquazardous%2Fimagestack-bundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fquazardous%2Fimagestack-bundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquazardous%2Fimagestack-bundle/lists"}