Case study
Photo Compressor, Resizer: KB app icon

Photo Compressor, Resizer: KB
Photography app for Android

Photo Compressor & Resizer: a batch image tool built with Flutter

Photo Compressor, Resizer: KB is an Android app we designed, built and publish on Google Play. It shrinks photos to a target file size, resizes many images at once and converts between formats, entirely on the device. It is built with Flutter and is our longest-running app on the store.

Project type: CarrySo product. Photo Compressor, Resizer: KB is software CarrySo owns and publishes, not a client project. See the Photo Compressor & Resizer product page for features, platforms and store links; this case study covers the problem, approach and engineering.

Platform
Android 7.0 and later
Built with
Flutter and Dart
First released on Google Play
12 April 2026
Current version
2.1.0 (updated 7 October 2026)
Google Play installs
1,000+
Project type
Owned product (published by CarrySo)
Our role
Product, design, development, publishing and maintenance

The problem

Job portals, admission forms and government sites often reject photos above a size limit such as 50 KB or 200 KB, and most people have no simple way to hit that number on a phone.

Online compressors solve it by uploading personal photos to a server, which many users are not comfortable with.

The solution

A local processing pipeline that compresses to a size target, resizes by pixels or percentage and converts PNG, JPG and WebP without any upload.

Batch selection, so hundreds of photos can be processed in one pass instead of one at a time.

Key features

  • Compress photos to a target size in KB or MB
  • Batch resize by exact width and height or by percentage
  • Convert between PNG, JPG and WebP
  • One-tap optimise that resizes and compresses together
  • All processing happens on the device; no cloud upload

Screenshots

Photo Compressor, Resizer: KB screenshot 1 from the Google Play listing
Photo Compressor, Resizer: KB screenshot 2 from the Google Play listing
Photo Compressor, Resizer: KB screenshot 3 from the Google Play listing
Photo Compressor, Resizer: KB screenshot 4 from the Google Play listing

Screenshots from the app's Google Play listing.

How we built it

Feature-first architecture

The code is organised by feature under lib/src/features with a shared core layer, and GetX controllers own each screen's state. Immutable models are generated with freezed and json_serializable.

Processing off the UI thread

Image compression and conversion use flutter_image_compress and the image package, with heavy work moved off the main isolate so the interface keeps scrolling during large batches.

Release and growth plumbing

Firebase Cloud Messaging, Cloud Firestore remote configuration and Google Mobile Ads are wired through our shared growth package, so update prompts and ad frequency can be tuned without shipping a new build.

Testing

The repository has 10 automated test files, covering the processing pipeline controller, output checks, file naming, rotation settings and smoke tests at larger text scales.

Tech stack

Technologies used in Photo Compressor & Resizer
TechnologyUsed for
Flutter & DartCross-platform UI and app logic
GetXState management and navigation
flutter_image_compress, imageOn-device compression, resizing and format conversion
freezed, json_serializableImmutable data models
Firebase (Core, Firestore, Cloud Messaging)Remote config and push notifications
Google Mobile AdsMonetisation
carryso_growth_config (in-house)Our shared Flutter package for remote app config, soft/hard update prompts, push notification device sync and ad frequency limits

Sources: Google Play listing (com.imageresizer.compress); App source repository: pubspec.yaml, lib/src, test/. Store figures last checked 9 October 2026. Read the Photo Compressor & Resizer privacy policy.

Related services

Flutter app development

Flutter app development for Android and cross-platform apps: architecture, state management, Firebase, on-device processing, testing and store release.

Android app development

Android app development with Flutter: apps built for real devices, published and maintained on Google Play, with Data safety, privacy policies and updates.

Mobile app maintenance and updates

Mobile app maintenance for Flutter apps: crash monitoring, SDK and target API updates, Google Play policy compliance, update prompts and regular releases.

More case studies

Tell us what you want to build. We'll reply by email with questions, and then with a proposed scope and estimate.

Start a project Email carrysoofficial@gmail.com