Soulireye gallery (client: Mustapha Kh) — iris photography / art studio industry producing framed iris artwork for clients.
Soulireye Desktop Automation App
Replace fragile, manual Photoshop steps with a Windows-first Flutter desktop pipeline that turns high-resolution iris photos into finished, printable artwork — from client intake through editing, templating, and export.
- Exact problem: Studio operators relied on slow, error-prone manual Photoshop workflows to circle irises, remove flash, color-correct, and generate framed artwork from templates.
- Business impact: Manual steps slowed delivery, increased rework risk, and made session resume unreliable — hurting turnaround time and consistency for client artwork.
- Technical / operational hurdles: Coordinate a long desktop pipeline (temp files, Hive session state, queue locking, partial edits, heavy Photoshop jobs, Dropbox PSD templates) without losing progress or leaving orphan files; enforce resume rules across Image Prep and Art Studio; support desktop UX (drag-drop, window management) on Windows.
Architecture & frameworks. Built with Flutter desktop (Windows), flutter_bloc, go_router, get_it, and Hive. Feature-oriented structure: Core (router, DI, Dropbox/OAuth, Photoshop JSX services) plus Onboarding, Project Hub, Iris Editor, and Art Studio. BLoC keeps long-running jobs observable; GoRouter session guards route users back to the correct step based on stored paths.
Development process & quality. Key features: client intake with 24h session history; Image Prep with drag-drop and format checks; Iris Editor queue (ellipse circling via Photoshop crop, brush flash removal, color matrix/local masks); Art Studio layouts (solo/duo, square/column/row/rectangle), Dropbox template sync, cancellable generation, print/email handoff. Problem-solving centered on clear resume rules, centralized storage services, and async overlays with cancel/resume awareness. Quality came from gated editor steps, human-readable failure dialogs, temp path hygiene, and dimension-cached artwork history.
APIs, integrations & data security. Dropbox OAuth downloads PSD templates over Dio; Photoshop automation runs through controlled JSX services rather than ad-hoc desktop scripts. Session and artwork metadata live in Hive locally; sensitive OAuth handling stays in dedicated services. Client emails and personalization fields are used only for configured handoff flows — not exposed in UI dumps.
- Operational impact: Delivered a production desktop tool with a repeatable iris-to-print workflow instead of fragile manual Photoshop steps.
- Client outcome: Soulireye reported the app “works just amazing,” that vision was executed as expected, and that Hiba stayed involved at every step with professional solutions.
- Follow-on success: The same client commissioned a second product (Receipt Generation App), reflecting trust and satisfaction with delivery quality.
- User review (Mustapha Kh, Soulireye): “Hiba is an ambitious developer… she loves what she does and works very hard… she is the one I will recommend to every person.”
Flutter, Dart, flutter_bloc, go_router, get_it, hive_flutter, dio, file_picker, path_provider, path, desktop_drop, window_manager, google_fonts, flutter_svg, dotted_border, image, equatable, dartz, uuid, printing, share_plus, Photoshop automation (JSX services), Dropbox OAuth