Portfolio

Projects

A selection of things I've built. Each one taught me something worth keeping.

Tactura screenshot

Tactura

2026

Role: Pipeline & on-device ML.

An iPadOS app that is built from Challenge 5 in Apple Developer Academy collab with Black Hand Gang, with a goals to help making an access for visually impaired audiences to FEEL visual artwork. In a simple way, Tactura converts 2D visual artwork into 2.5D tactile reliefs that can be 3D-printed directly and felt.

My part was the engine underneath:

I wrote the Python reference implementation of the nine-stage conversion, ported the numeric core into a Swift package, and proved the port with a differential harness against golden fixtures , zero absolute error on every deterministic stage. I also ran Depth Anything V2 Large (305M) fully on-device through Core ML, built the camera capture and the interactive RealityKit relief preview, and added the checkpointed save/resume so tuning a slider never re-runs neural inference. Exports a binary STL straight to a slicer.

SwiftSwiftUIiPadOSCore MLRealityKitOpenCVPython
Pourfect: AR Latte Art screenshot

Pourfect: AR Latte Art

2026

Role: Developer (Presentation Layer).

An augmented-reality iOS app that teaches latte art. Pourfect uses AprilTag fiducial tracking to lock onto the cup and pitcher, then overlays a real-time, GPU-accelerated fluid simulation so you can practice pours — Heart, Tulip, Rosetta — with any liquid and get instant visual feedback. Built after pivoting from ML-based object tracking to robust, zero-training 6DoF geometry.

SwiftARKitMetalKitVisionAprilTags
Zony screenshot

Zony

2026

Role: Tech Lead, System Architect, and Developer

A dual-platform experience spanning iPhone and Apple Watch, built for the Apple Developer Academy’s “From Pieces to Product” challenge (Challenge 3). To empower parents with ashtmatic children to keep their child doing their desired sports with realtime tracking of their child’s oxygen saturation and heart rate, Zony is a companion app that allows parents to monitor their child’s health data while they are away. The app is distributed to testers via TestFlight.

SwiftSwiftUIwatchOSiOSHealthKitServerlessnode.js
No-Ex Contact screenshot

No-Ex Contact

2026

Role: Developer

A native iOS app created for the Apple Developer Academy’s Challenge 2 "Recreate & Remix" in pair(Coder+Designer). A Remixed Contact App with auto delete functionality with timers and a swipe feature like dating app mechanism (named no-ex for a reason lol), distributed to testers via TestFlight.

SwiftSwiftUIiOSCore DataContacts
ODD screenshot

ODD

2025

Role: Android Developer and Project Manager

A native Android marketplace app built entirely in Kotlin for a Indonesian perfume brand called ODD. Built with Jetpack Compose, MVVM architecture, and a clean code approach. The app features a product catalog, shopping cart, and checkout process, providing users with a seamless shopping experience. Implemented payment gateway using Xendit, and integrated email notifications for order updates. The app is designed to be responsive and user-friendly, with a focus on performance and scalability.

KotlinAndroidGradleJetpack ComposeMVVMXendit