An Angular app served from Bunny Storage through a pull zone.
bun install
bun startbunny sites create my-site
bunny sites deploy --buildThe Angular builder writes the app to dist/my-app/browser, so bunny.jsonc points the bunny.net CLI at that folder. The CLI detects Angular and serves index.html for client-side routes such as /about.
Read the full guide: Deploy Angular to Bunny Storage.
By default NgOptimizedImage uses its built-in loader and serves the original file. Build with BUNNY_OPTIMIZER=true and src/app/app.config.ts provides a custom IMAGE_LOADER, so every width in the srcset becomes a URL such as /images/hero.png?width=828&quality=75 that Bunny Optimizer resizes at the edge. The build script in package.json passes the flag to ng build --define.
bunny sites deploy --build --env BUNNY_OPTIMIZER=trueOptimizer is a paid add-on. Turn it on for the site's pull zone, with the Dynamic Image API and URL Query String vary enabled, and CSS and JavaScript minification off. With the flag on but Optimizer off, the images still load at full size.