Skip to content

Search

Match titles, tags, and descriptions. Arrow keys to move,Enter to open,Esc to close.

Open from the page (not while typing in a field):/·⌘KorCtrlK

    Personal project

    PostLens

    Built an iPhone-first private visual content studio for selecting strong photos, applying transparent on-device enhancements, composing layouts, and exporting social-ready work.

    Creator
    3 mo

    A closer look at the design decisions, technical choices, and problems this project was built to solve.

    Active project

    Building a private visual content studio for iPhone

    PostLens helps people choose strong photos, improve them with explainable edits, compose social-ready layouts, and export the result. Its workflow is intentionally narrow: Select → Enhance → Compose → Export.

    Scheduling, connected accounts, analytics, and engagement tracking stay outside the product. That boundary lets the app focus on the creative work while keeping the first version local to the iPhone.

    Goals

    • Make photo selection easier with useful scoring that does not upload a library to a private server.
    • Keep edits understandable through measured signals and bounded adjustment recipes.
    • Support real publishing formats without locking a photo into one destination or crop.
    • Treat privacy, accessibility, and localization as product features rather than release notes.

    What I built

    • A progressive scored gallery that prioritizes visible photos, analyzes local assets in battery-aware batches, and reuses a private on-device index.
    • An editing workflow that measures exposure, contrast, saturation, color balance, clipping, and sharpness before applying predictable looks.
    • A tailored AI look that searches bounded candidates, validates the result, frames a Vision-guided crop, and drafts an editable grounded caption.
    • Layouts and carousels for reusable social formats, publishing sets, profile grids, and still-frame video export.
    • Optional Apple integrations for Foundation Models coaching and per-use Image Playground handoff on supported devices.
    • An Astro landing and support site in English and Spanish.

    Technical highlights

    • Native stack: SwiftUI, PhotoKit, PhotosPicker, Vision, Core Image, StoreKit, and Apple system sharing.
    • On-device intelligence: local scoring, bounded preview re-analysis, subject-aware framing, and caption preparation.
    • Privacy boundaries: no PostLens upload server, metadata-free saved copies, and explicit disclosure before optional Apple generative workflows.
    • Release quality: privacy manifests, source-size checks, native tests, SEO checks, and a release preflight.

    Results

    • A complete free single-photo workflow from library review to format-specific export.
    • Optional supporter features that add multi-photo and publishing workflows without gating privacy, accessibility, scoring, or core editing.
    • A clear product boundary that keeps PostLens a visual studio instead of another social account dashboard.

    Why it matters

    Creative tools can be helpful without becoming opaque. PostLens combines on-device measurement, predictable adjustments, and optional system intelligence while keeping the user in control of the final image and caption.

    Visit PostLens.

    Share this piece
    LinkedInXWhatsApp

    Related work

    More projects in a similar lane.

    More work from a similar lane — same type, overlapping technologies, adjacent problems.

    Browse all projects
    CreatorActive

    Aug 2026 - Present

    RoadScore

    Built a bilingual, offline road-trip card game that turns one passenger-operated phone into a shared scoreboard, deck library, and private trip journal.

    • Ships a complete 350-card bilingual Road Trip Mix for offline play
    • Astro
    • TypeScript
    • React Native
    • Expo
    Read case study for RoadScore
    CreatorActive

    Jan 2026 - Present

    Between Contractions

    Built a calm, privacy-first contraction timer for the web, iOS, Android, watches, widgets, and optional real-time partner coordination.

    • Delivered one bilingual timer across browser, phone, watch, widget, and desktop surfaces
    • Astro
    • TypeScript
    • Turborepo
    • CI-CD
    Read case study for Between Contractions