Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
161 changes: 161 additions & 0 deletions ECOLENS_REPORT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
# EcoLens Optimization Report
Generated on: 5/15/2026, 4:42:04 PM

## Summary
- Size reduction: 49.0%
- Bandwidth saved: 4.97 MB
- CO2 avoided: 0.99 g per page view

## Transformation Pattern
- Images: f_auto,q_auto:eco,w_auto,dpr_auto,g_auto,e_auto_contrast,e_sharpen

## Files Added By This PR
- ECOLENS_REPORT.md
- cloudinary-loader.js

## Source File Changes
This PR does not rewrite image references automatically. Use the report to apply the changes, or run your own refactor with the loader.

## Optimized Assets
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/search.png -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/search.png
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/internet.png -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/internet.png
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/telephone.png -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/telephone.png
- https://agilysys.com/en/wp-content/uploads/Agilysys-Logo-only-RGB.svg -> https://agilysys.com/en/wp-content/uploads/Agilysys-Logo-only-RGB.svg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/cross.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/cross.svg
- https://www.agilysys.com/en/wp-content/uploads/2024/08/Resort-1-1024x640.jpg -> https://www.agilysys.com/en/wp-content/uploads/2024/08/Resort-1-1024x640.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-463075675-hotel-room-1-1024x642.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-463075675-hotel-room-1-1024x642.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-1802150498-paying-on-IG-Fly-1024x683.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-1802150498-paying-on-IG-Fly-1024x683.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-1449917811-transfer-data-1024x683.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-1449917811-transfer-data-1024x683.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-2167004247-friends-at-casino-1024x683.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-2167004247-friends-at-casino-1024x683.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-516062223-1-1024x680.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-516062223-1-1024x680.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-1462929700-kiosk-food-order-with-screen-copy-1024x682.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-1462929700-kiosk-food-order-with-screen-copy-1024x682.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-1291423946-spa-1024x683.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-1291423946-spa-1024x683.jpg
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-2.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-2.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-3.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-3.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-4.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-4.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-5.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Rectangle-5.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/0d6d94ba0de5a5f42e73034820a3b4a0c3cc6379.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/0d6d94ba0de5a5f42e73034820a3b4a0c3cc6379.png
- https://www.agilysys.com/en/wp-content/uploads/ihg-new.svg -> https://www.agilysys.com/en/wp-content/uploads/ihg-new.svg
- https://www.agilysys.com/en/wp-content/uploads/GC.png -> https://www.agilysys.com/en/wp-content/uploads/GC.png
- https://www.agilysys.com/en/wp-content/uploads/PH.png -> https://www.agilysys.com/en/wp-content/uploads/PH.png
- https://www.agilysys.com/en/wp-content/uploads/RC.png -> https://www.agilysys.com/en/wp-content/uploads/RC.png
- https://www.agilysys.com/en/wp-content/uploads/UH.png -> https://www.agilysys.com/en/wp-content/uploads/UH.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/565cfcf8e3d21d17b48b0ab90067e19a042d3dbe.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/565cfcf8e3d21d17b48b0ab90067e19a042d3dbe.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/001-resort.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/001-resort.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Iconsinde-hotels-1.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Iconsinde-hotels-1.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/002-resort-1.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/002-resort-1.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/015-management.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/015-management.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/003-golf.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/003-golf.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/004-spa.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/004-spa.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Iconssenior-living.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Iconssenior-living.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/005-dish.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/005-dish.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/013-graduation-hat.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/013-graduation-hat.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/014-building.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/014-building.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/007-ship.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/007-ship.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/008-sport-equipment.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/008-sport-equipment.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/009-airplane.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/009-airplane.png
- https://www.agilysys.com/en/wp-content/uploads/01-healthcare.png -> https://www.agilysys.com/en/wp-content/uploads/01-healthcare.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Iconscasinos.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Iconscasinos.png
- https://www.agilysys.com/en/wp-content/uploads/Iconstribal.svg -> https://www.agilysys.com/en/wp-content/uploads/Iconstribal.svg
- https://www.agilysys.com/en/wp-content/uploads/2025/08/fba3ca69d092a6eb6150ddf61255a5e55f4d79e2.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/fba3ca69d092a6eb6150ddf61255a5e55f4d79e2.png
- https://www.agilysys.com/en/wp-content/uploads/ddb4fed2547c3258080a505539aedd253ec6e2f1.jpg -> https://www.agilysys.com/en/wp-content/uploads/ddb4fed2547c3258080a505539aedd253ec6e2f1.jpg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/l-a.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/l-a.svg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/g-a.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/g-a.svg
- https://www.agilysys.com/en/wp-content/uploads/Modernize-Your-Property-with-an-Industry-Leading-PMS.png -> https://www.agilysys.com/en/wp-content/uploads/Modernize-Your-Property-with-an-Industry-Leading-PMS.png
- https://www.agilysys.com/en/wp-content/uploads/Gain-Efficiency-Grow-Your-Business.png -> https://www.agilysys.com/en/wp-content/uploads/Gain-Efficiency-Grow-Your-Business.png
- https://www.agilysys.com/en/wp-content/uploads/Personalize-Service-with-Seamless-Lodging-Software.png -> https://www.agilysys.com/en/wp-content/uploads/Personalize-Service-with-Seamless-Lodging-Software.png
- https://www.agilysys.com/en/wp-content/uploads/Streamline-Your-Golf-Management-Operations.png -> https://www.agilysys.com/en/wp-content/uploads/Streamline-Your-Golf-Management-Operations.png
- https://www.agilysys.com/en/wp-content/uploads/Personalized-Digital-Hospitality-Marketing.png -> https://www.agilysys.com/en/wp-content/uploads/Personalized-Digital-Hospitality-Marketing.png
- https://www.agilysys.com/en/wp-content/uploads/Optimize-Casino-Guest-Experiences.png -> https://www.agilysys.com/en/wp-content/uploads/Optimize-Casino-Guest-Experiences.png
- https://www.agilysys.com/en/wp-content/uploads/Spa-Revenue-Optimized-Package-Yielding.png -> https://www.agilysys.com/en/wp-content/uploads/Spa-Revenue-Optimized-Package-Yielding.png
- https://www.agilysys.com/en/wp-content/uploads/Resort-Operations-Powered-by-Agilysys.png -> https://www.agilysys.com/en/wp-content/uploads/Resort-Operations-Powered-by-Agilysys.png
- https://www.agilysys.com/en/wp-content/uploads/Next-Generation-Cloud-PMS.png -> https://www.agilysys.com/en/wp-content/uploads/Next-Generation-Cloud-PMS.png
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/side-arrow.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/side-arrow.svg
- https://www.agilysys.com/en/wp-content/uploads/Ig_logo.svg -> https://www.agilysys.com/en/wp-content/uploads/Ig_logo.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-3.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-3.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658.png
- https://www.agilysys.com/en/wp-content/uploads/LogosKiosk.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosKiosk.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-2.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-2.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-1.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-1.png
- https://www.agilysys.com/en/wp-content/uploads/LogosIG-OnDemand.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosIG-OnDemand.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-2.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-2.png
- https://www.agilysys.com/en/wp-content/uploads/LogosPanOptic.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosPanOptic.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-1.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-1.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-3.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-3.png
- https://www.agilysys.com/en/wp-content/uploads/LogosFlex.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosFlex.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-5.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-5.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-4.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-4.png
- https://www.agilysys.com/en/wp-content/uploads/LogosDMB.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosDMB.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-4.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-4.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-5.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-5.png
- https://www.agilysys.com/en/wp-content/uploads/LogosKDS.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosKDS.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-7.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-7.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-6.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-6.png
- https://www.agilysys.com/en/wp-content/uploads/LogosFly.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosFly.svg
- https://www.agilysys.com/en/wp-content/uploads/Subtract-6.png -> https://www.agilysys.com/en/wp-content/uploads/Subtract-6.png
- https://www.agilysys.com/en/wp-content/uploads/Frame-209658-7.png -> https://www.agilysys.com/en/wp-content/uploads/Frame-209658-7.png
- https://www.agilysys.com/en/wp-content/uploads/LogosQuickpay.svg -> https://www.agilysys.com/en/wp-content/uploads/LogosQuickpay.svg
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Product-Logos-3.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Product-Logos-3.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/Vector-1.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/Vector-1.png
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/quotes.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/quotes.svg
- https://www.agilysys.com/en/wp-content/uploads/Best-companies-2022.png -> https://www.agilysys.com/en/wp-content/uploads/Best-companies-2022.png
- https://www.agilysys.com/en/wp-content/uploads/ServiceProviderBadge-footer-icon-2.png -> https://www.agilysys.com/en/wp-content/uploads/ServiceProviderBadge-footer-icon-2.png
- https://www.agilysys.com/en/wp-content/uploads/Winner-2025-American-Spa-Professionals-Choice-Favorite-Spa-Software-Badge.png -> https://www.agilysys.com/en/wp-content/uploads/Winner-2025-American-Spa-Professionals-Choice-Favorite-Spa-Software-Badge.png
- https://www.agilysys.com/en/wp-content/uploads/Spa-2024-Awards.png -> https://www.agilysys.com/en/wp-content/uploads/Spa-2024-Awards.png
- https://www.agilysys.com/en/wp-content/uploads/GL-AWARD-Gradient-Platinum-Agilysys-Book-2025-1.jpg -> https://www.agilysys.com/en/wp-content/uploads/GL-AWARD-Gradient-Platinum-Agilysys-Book-2025-1.jpg
- https://www.agilysys.com/en/wp-content/uploads/Gaming-tech-awards-2025.png -> https://www.agilysys.com/en/wp-content/uploads/Gaming-tech-awards-2025.png
- https://www.agilysys.com/en/wp-content/uploads/BigInnovation-award-footer-new-1.png -> https://www.agilysys.com/en/wp-content/uploads/BigInnovation-award-footer-new-1.png
- https://www.agilysys.com/en/wp-content/uploads/HTNG-TechOvation-1.png -> https://www.agilysys.com/en/wp-content/uploads/HTNG-TechOvation-1.png
- https://www.agilysys.com/en/wp-content/uploads/1633377061-agilysys-gaming-technology-award.png -> https://www.agilysys.com/en/wp-content/uploads/1633377061-agilysys-gaming-technology-award.png
- https://www.agilysys.com/en/wp-content/uploads/Award-Spa-badge-1.png -> https://www.agilysys.com/en/wp-content/uploads/Award-Spa-badge-1.png
- https://www.agilysys.com/en/wp-content/uploads/2024_Innovate_Awards_WINNER1.png -> https://www.agilysys.com/en/wp-content/uploads/2024_Innovate_Awards_WINNER1.png
- https://www.agilysys.com/en/wp-content/uploads/Big-awards-2025.png -> https://www.agilysys.com/en/wp-content/uploads/Big-awards-2025.png
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/tic.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/tic.svg
- https://www.agilysys.com/en/wp-content/uploads/Agilysys-Book-with-SPEND-Technology.jpg -> https://www.agilysys.com/en/wp-content/uploads/Agilysys-Book-with-SPEND-Technology.jpg
- https://www.agilysys.com/en/wp-content/uploads/2024/07/News-1024x390-1.jpg -> https://www.agilysys.com/en/wp-content/uploads/2024/07/News-1024x390-1.jpg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/cta.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/cta.svg
- https://www.agilysys.com/en/wp-content/uploads/blog-Hotel-Guest-Kiosk.jpg -> https://www.agilysys.com/en/wp-content/uploads/blog-Hotel-Guest-Kiosk.jpg
- https://www.agilysys.com/en/wp-content/uploads/GettyImages-1328049742-students-in-a-cafe-1024x683.jpg -> https://www.agilysys.com/en/wp-content/uploads/GettyImages-1328049742-students-in-a-cafe-1024x683.jpg
- https://www.agilysys.com/en/wp-content/uploads/2024/09/Agilysys-Logo-v1.png -> https://www.agilysys.com/en/wp-content/uploads/2024/09/Agilysys-Logo-v1.png
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/w-a.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/w-a.svg
- https://www.agilysys.com/en/wp-content/uploads/Spa-award.png -> https://www.agilysys.com/en/wp-content/uploads/Spa-award.png
- https://www.agilysys.com/en/wp-content/uploads/Award-Tech-novation.png -> https://www.agilysys.com/en/wp-content/uploads/Award-Tech-novation.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/award2.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/award2.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/award3.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/award3.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/award4.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/award4.png
- https://www.agilysys.com/en/wp-content/uploads/2025/08/award1.png -> https://www.agilysys.com/en/wp-content/uploads/2025/08/award1.png
- https://www.agilysys.com/en/wp-content/uploads/Facebookwhite.svg -> https://www.agilysys.com/en/wp-content/uploads/Facebookwhite.svg
- https://www.agilysys.com/en/wp-content/uploads/linkedinwhite.svg -> https://www.agilysys.com/en/wp-content/uploads/linkedinwhite.svg
- https://www.agilysys.com/en/wp-content/uploads/instagramwhite.svg -> https://www.agilysys.com/en/wp-content/uploads/instagramwhite.svg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/cut.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/cut.svg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/h-cut.svg -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/h-cut.svg
- https://www.agilysys.com/en/mejs-controls.svg -> https://www.agilysys.com/en/mejs-controls.svg
- https://www.agilysys.com/images/uploader-icons.png -> https://www.agilysys.com/images/uploader-icons.png
- https://www.agilysys.com/images/spinner.gif -> https://www.agilysys.com/images/spinner.gif
- https://www.agilysys.com/images/uploader-icons-2x.png -> https://www.agilysys.com/images/uploader-icons-2x.png
- https://www.agilysys.com/images/spinner-2x.gif -> https://www.agilysys.com/images/spinner-2x.gif
- https://www.agilysys.com/en/border-anim-v.gif -> https://www.agilysys.com/en/border-anim-v.gif
- https://www.agilysys.com/en/border-anim-h.gif -> https://www.agilysys.com/en/border-anim-h.gif
- https://www.agilysys.com/en/wp-content/uploads/2024/10/cropped-favicon-150x150.png -> https://www.agilysys.com/en/wp-content/uploads/2024/10/cropped-favicon-150x150.png
- https://www.agilysys.com/en/wp-content/uploads/2024/10/cropped-favicon-300x300.png -> https://www.agilysys.com/en/wp-content/uploads/2024/10/cropped-favicon-300x300.png
- https://www.agilysys.com/en/wp-content/uploads/2021/03/banner-news-1024x400.jpg -> https://www.agilysys.com/en/wp-content/uploads/2021/03/banner-news-1024x400.jpg
- https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/call.png -> https://www.agilysys.com/en/wp-content/themes/New-Design-Theme/img/call.png

## Cloudinary Setup
1. Go to https://console.cloudinary.com
2. Open your Cloudinary Dashboard
3. Copy your Cloud Name (visible at the top of the dashboard)

## Environment Setup
Create a .env file and a .env.example file at the project root with one of the following:

- CLOUDINARY_CLOUD_NAME=YOUR_CLOUD_NAME
or
- NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=YOUR_CLOUD_NAME

## How To Validate
1. Install dependencies
2. Start the dev server
3. Confirm image URLs are served through Cloudinary
4. Compare page weight before and after
5 changes: 5 additions & 0 deletions cloudinary-loader.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

export default function cloudinaryLoader({ src, width, quality }) {
const params = ['f_auto', 'c_limit', `w_${width}`, `q_${quality || 'auto'}`].join(',');
return `https://res.cloudinary.com/ddn6tl045/image/fetch/${params}/${encodeURIComponent(src)}`;
}