
MOMEN Photobooth
MOMEN Photobooth is a local-first kiosk system built for tablet-based photobooths. The application captures photos, transforms them into retro black-and-white prints using Floyd-Steinberg dithering, uploads both original and processed images to Google Drive, generates QR-code receipts, and prints them automatically through an ESC/POS thermal printer. Designed around an edge-computing architecture, the system continues operating reliably without depending on cloud connectivity during the photo session.
- Role
- Full Stack Developer
- Client
- MOMEN Photobooth
- Duration
- 2 Months
- Team
- Solo
- Year
- 2026
- Category
- Desktop Application
- Status
- completed
Stack
What it moved.
100%
Local Processing
Edge computing workflow
3
Photo Modes
Solo, Couple & Group
Auto
Cloud Backup
Google Drive Sync
ESC/POS
Printer
Thermal 80mm
The problem.
Commercial photobooth software often depends on cloud connectivity, causing delays and reducing reliability when internet access becomes unstable.
Thermal printers only support black-and-white output, making standard grayscale photos appear flat and low quality.
Operators require an automatic workflow that captures photos, stores them safely, prints receipts, and delivers digital copies without manual intervention.
What I built.
Built a fully local kiosk application that handles image capture, processing, and printing directly on the host computer.
Implemented Floyd-Steinberg dithering to produce high-quality retro black-and-white images optimized for thermal printing.
Integrated Google Drive to automatically organize uploaded photos into date-based folders while generating shareable gallery links.
Generated QR-code receipts that allow visitors to instantly access their digital gallery after printing.
How it fits together.
A local-first edge computing architecture where image processing and printing happen entirely on the local machine, while cloud services are used only for backup and sharing.
Tablet Interface
Touch-friendly kiosk interface guiding visitors through package selection, countdown, capture, and preview.
Backend API
Coordinates image capture, processing, storage, printing, and Google Drive synchronization.
Image Processing
Processes captured images using Sharp and a custom Floyd-Steinberg dithering algorithm before printing.
Output Services
Uploads processed images to Google Drive and communicates directly with ESC/POS thermal printers over TCP.
What it does.
Tablet Kiosk Mode
A fullscreen interface optimized for touch interactions inside a photobooth.
Multiple Photo Packages
Supports Solo, Couple, and Group photo sessions with different layouts.
Retro Dithering Filter
Applies Floyd-Steinberg dithering to produce crisp black-and-white thermal prints.
Automatic Google Drive Upload
Organizes every session into date-based folders while preserving original and processed images.
QR Code Receipt
Prints a receipt containing a QR code that opens the online gallery for the current session.
Thermal Printer Integration
Prints photos and receipts directly through network-based ESC/POS printers.
Seen from the inside.
Drag or scroll horizontally — 5 frames
Where it got hard.
Thermal Printer Image Quality
What broke
Thermal printers cannot reproduce grayscale images effectively, resulting in washed-out prints.
How it was fixed
Implemented Floyd-Steinberg dithering to preserve visual details using only black pixels.
Reliable Offline Workflow
What broke
Photo sessions should continue even if internet connectivity is interrupted.
How it was fixed
Designed the application around edge computing, where all critical processing occurs locally before optional cloud synchronization.
Automated Gallery Delivery
What broke
Guests expect digital copies immediately after taking photos.
How it was fixed
Automatically uploads processed images to Google Drive and embeds the generated gallery URL inside a QR code printed on the receipt.
What I owned.
Designed the kiosk user experience.
Developed the React frontend for tablet devices.
Built the Express backend API.
Implemented custom Floyd-Steinberg dithering.
Integrated Google Drive API for cloud backup.
Integrated ESC/POS thermal printing.
Designed the complete local-first architecture.
How it ran.
Research
Week 1
Analyzed photobooth workflows, printer capabilities, and Google Drive integration.
Core Development
Weeks 2–4
Implemented kiosk interface, backend services, image processing, and local storage.
Integration
Weeks 5–6
Integrated Google Drive synchronization, QR code generation, and ESC/POS printing.
Testing
Week 7
Validated complete end-to-end workflows on a physical photobooth setup.
What I took from it.
Edge computing significantly improves reliability for kiosk-based applications.
Image preprocessing has a major impact on thermal print quality.
Automating the entire workflow creates a seamless user experience from capture to print.
Integrating hardware devices requires careful handling of network communication and fault recovery.
What I'd do next.
Support DSLR camera integration.
Add customizable photo templates and overlays.
Enable online reservation and payment.
Provide remote booth monitoring and analytics.
Support multiple printer profiles and paper sizes.
Next case study
SoraTour
A modern company profile and travel booking website for PT. SORA TRAVEL NUSANTARA.


