Portfolio
Work
Below are Soft Flourish's own shipped, published products — real apps you can install today and real books you can buy, not illustrations. They're the clearest evidence of how we scope, build, and ship, because you can go verify every claim on the App Store, Play Store, Microsoft Store, or a bookshelf yourself.
Productivity · macOS & Windows
MeetWing
A real-time AI co-pilot that listens to meetings and never stores what it hears.
The problem
People walk into calls — sales, interviews, client work — and lose the thread of what they meant to say the moment the conversation moves fast. The value of an assistant here lives entirely in latency: suggestions that arrive a few seconds late are useless.
Our approach
We built a native menu-bar app that transcribes live audio locally and streams it to Google's Speech-to-Text (Chirp) and Gemini for context-aware suggestions, with playbooks that tune the AI's behavior for sales calls, interviews, or client meetings. Privacy was a hard constraint from day one, not a policy written after the fact: audio is processed and discarded, never recorded or stored, and that design decision shaped the architecture at every layer.
What shipped
MeetWing ships on macOS via the Mac App Store and on Windows via a native WinUI3 app, with live transcription, AI-generated suggestions, an optional live web-grounding mode for real-time facts, and one-click export to PDF, TXT, Markdown, or CSV. Windows billing runs on RevenueCat Web Billing so the subscription flow works without a Microsoft Store IAP dependency.
macOSWindows (WinUI3)Google Speech-to-TextGeminiRevenueCat
View the MeetWing product page →Productivity · iOS, iPad, Mac, Windows, Android
Flourish PDF
A full PDF editor — reading, editing, OCR, and AI — that never uploads a document.
The problem
Most "free" PDF tools route your document through a server to do anything beyond basic viewing — OCR, AI summarization, and editing typically require an upload. For anyone handling contracts, medical records, or client files, that's a real barrier, not a minor inconvenience.
Our approach
We scoped the entire product around a single constraint: every feature, including OCR and AI, had to run on-device. That ruled out several off-the-shelf approaches and meant building a local OCR and document-processing pipeline per platform rather than calling a hosted API, which is the harder but more defensible path for a document tool built around user trust.
What shipped
Flourish PDF is live across Mac, Windows, iPhone, iPad, and Android with reading, editing, organizing, scanning, signing, and protecting PDFs, all processed locally. Windows uses RevenueCat Web Billing for subscription management, following the same web-billing pattern we built for MeetWing.
Swift/SwiftUIKotlinWindows (.NET/WinUI)On-device OCRRevenueCat
View the Flourish PDF product page →Productivity · macOS
Message Exporter
Getting your own message history off your own Mac, in a format you can keep.
The problem
Messages history is one of the few archives people genuinely need out of a device — for a legal dispute, an insurance claim, or simply to keep a record of conversations with someone who is gone — and macOS offers no export at all. The usual workarounds are hundreds of screenshots, or handing a copy of your entire chat database to a stranger's website.
Our approach
The whole product is built around not being that website: it reads the local Messages database on the machine, resolves contact names and attachments, and renders the export locally, so there is no server that could leak a conversation even in principle. The harder engineering is in the rendering — a chat transcript has to survive becoming a paginated PDF or a spreadsheet row without losing who said what, when, or which image they attached, and each of the five output formats wants that structure a different way.
What shipped
Message Exporter is on the Mac App Store. It lists every conversation, searches names and message text, exports an exact date range to PDF, Excel, CSV, HTML, or plain text, collects shared media alongside the transcript, and can read a local iPhone backup for history that is no longer on the Mac.
Swift/SwiftUImacOSSQLitePDFKitStoreKit
View the Message Exporter product page →Utilities · Mac, Windows, iPhone, iPad & Android
SystemZen
Storage cleanup that tells you the truth about where the space went.
The problem
"Other" or "System Data" quietly swallowing tens of gigabytes is the most common complaint about a full device, and the category of app that promises to fix it has an earned reputation for the opposite — inflated numbers, one-click cleans that remove things you wanted, and a subscription attached to a progress bar.
Our approach
We made the scan explainable before we made it fast: every figure traces back to real files or caches you can inspect, and nothing is removed without you seeing what it is first. Five surfaces share one design system, one account, and one entitlement, but each cleanup engine is deliberately platform-specific — what is safe to delete on Android has almost nothing in common with what is safe on macOS, and flattening that difference is exactly how these apps break machines. Scanning happens entirely on the device: file names, photos, and the installed-app list never reach a server.
What shipped
SystemZen runs on Mac, Windows, iPhone, iPad, and Android with a storage breakdown, cleanup runs recorded with their real reclaimed-space figures, and a shared sign-in across all five surfaces. The mobile free tier is ad-supported; the paid tier is billed through whichever store the user came from.
Swift/SwiftUIKotlinWinUIFirebaseRevenueCat
View the SystemZen product page →Inspection & field tools · iOS & Android
SurfaceIQ
A camera-and-depth surface scanner that flags cracks, stains, dents, and wear.
The problem
Visual inspection of surfaces — walls, floors, equipment, vehicles — is normally a fully manual, subjective process. The goal was a mobile tool that could highlight anomalies objectively and consistently, without pretending to replace professional judgment where it actually matters (structural or safety-critical calls).
Our approach
This is a case where native development wasn't optional: real-time depth capture needs direct access to ARKit's scene depth on iOS and ARCore's depth API on Android, and those frameworks can't share a camera session with a standard capture pipeline, so the two modes are a hardware-level swap, not an add-on. We ported the core anomaly-detection math — grid-based color and texture comparison against a stored baseline, followed by clustering and classification — line-for-line between Swift and Kotlin, so both platforms produce identical results from the same algorithm, and kept that math fully unit-testable and separate from the platform-specific camera code.
What shipped
SurfaceIQ runs real live-camera scanning (not canned demo output) with on-device RGB and depth anomaly detection, baseline comparisons, and PDF report export. The free tier includes ad-supported scanning with a five-scan history limit; SurfaceIQ Pro adds unlimited history, baseline compare, cloud sync, and export, enforced both client-side and server-side so entitlement checks can't be bypassed by a patched client.
Swift/ARKitKotlin/ARCoreFirebaseRevenueCatGoogle AdMob
View the SurfaceIQ product page →Sports · iOS, iPad, Mac, Apple TV & Android
The Pulse sports franchise
Three live-sports apps — Football, Cricket, multi-sport — one shared engine.
The problem
Live-sports apps live and die on data freshness and reliability during exactly the moments traffic spikes hardest — a goal, a wicket, a medal round. Building each competition as a fully separate app meant re-solving the same live-data, notification, and subscription problems over and over — and early on, we did exactly that, with seven apps for what is really three products. A single-event app also goes dormant for years between tournaments, which is a bad deal for everyone: the user deletes it, and the listing rots.
Our approach
We consolidated to three evergreen apps on one shared engine for live scores, tables, fixtures, and results — Football Insight Hub for international tournaments, continental championships and domestic league seasons; Cricket Pulse for ODI and T20 internationals plus the major domestic T20 league seasons; and Sport Orbit for the summer and winter multi-sport games alongside year-round athletics, aquatics, and winter sports. Each tournament became a competition behind an in-app switcher rather than its own download, so coverage grew while the number of things to maintain shrank.
What shipped
The franchise runs across iPhone, iPad, Mac, and Apple TV, with live scores, live league tables, fixtures and results, a competition switcher, and archived past seasons. Ads are non-personalized via Google AdMob, and each of the three apps publishes one privacy policy and one set of terms covering every competition it carries.
Swift/SwiftUItvOSKotlinFirebaseGoogle AdMob
View the Football Insight Hub product page →Publishing · Paperback, hardcover & Kindle
Architecting Agentic AI
A seventeen-volume technical reference, published in all three editions.
The problem
A reference work of this size is where self-publishing normally falls apart. Print stores enforce hard page ceilings per trim size, hardcover and paperback want different geometry, ebook readers want reflowable text rather than page images, and every one of those constraints has to be settled before the writing is laid out — not discovered at upload time when the only remedy is splitting a finished volume in half.
Our approach
We built the publishing side as a pipeline rather than a manual process: one authored source per volume, rendered into paperback, hardcover, and ebook through format-aware typesetting, with covers composited to the exact spine width the page count implies. ISBNs are assigned from our own block — three per volume, one per format — so every edition is properly distinct and none of them are tied to a single retailer. Then we read every page of every rendered volume before it ships, because the defects that matter at this scale are semantic, not structural, and no automated check catches them.
What shipped
All seventeen volumes are published in paperback, hardcover, and Kindle. The same pipeline now carries our other titles, and it is the pipeline we run a client's manuscript through.
TypesettingCover designISBNPaperbackHardcoverEbook
Talk to us about publishing your book →Beyond our own products, most of our engineering work is client-confidential — field operations tools, internal dashboards, and store-ready launches built under NDA for businesses that don't publish their vendor relationships. If you'd like references in your industry, get in touchand we'll share what we can. If you have an app idea or a manuscript of your own, that's the same form — we take on both.