Designing Useful Things
Projects range from shipped web and iOS apps to prototypes, home lab documentation, and research concepts.
Orbit, A Fancy Planner
Built because linear planners did not match how my ADHD brain understands a day.
A circular 24-hour planner for visual time blocking, recurring routines, templates, and drag-based daily scheduling.
Why I Made This
I built Orbit because traditional planners never worked particularly well for my ADHD or the way I actually schedule my life.
A lot of tasks do not happen on a strict weekly cadence. Instead, they need to happen five days after I last did them or two weeks from completion. Orbit's regenerating task system was built around that idea and remains my favorite feature.
I also wanted a better way to see where my time is actually going throughout the day instead of constantly jumping between calendars and task lists.
Passport Buddy
Built because group travel gets complicated fast when friends hold different passports.
Passport-aware travel planning across visa friction, Schengen constraints, departure cities, and practical meeting airports.
Why I Made This
Many of my friends from college hold different passports, which makes group travel surprisingly complicated.
I originally tracked visa requirements, passport restrictions, and travel eligibility in a giant spreadsheet. Eventually it became obvious that what I really needed was an app.
Passport Buddy helps answer a simple question: where can all of us go together in a way that is practical and affordable?
Time Here, Time There
Built because coordinating across cities should not require mental calendar math.
A world clock built around one shared timeline: drag it and every city moves together. Daylight bands, sunrise and sunset, timezone grouping, any city as home, and an iOS home-screen widget.
Why I Made This
I wanted a quick way to compare home time, meeting time, and destination time without juggling multiple clock apps.
The app is designed around real scheduling questions: what time is reasonable there, what does that mean here, and which cities can overlap without making someone miserable?
Time Since Chore Manager
Built because some routines should reset from the last time they were done.
Track chores, maintenance, routines, sessions, and life events by elapsed time rather than fixed calendar recurrences.
Why I Made This
I built this because many recurring tasks do not fit a normal weekly calendar.
Replacing HVAC filters, changing sheets, cleaning litterboxes, watering plants, fasting sessions, and dozens of other routines are often better tracked from the last completion date rather than from a fixed schedule.
Time Since supports occurrence trackers, session trackers, counters, reminders, CSV import/export, and flexible elapsed-time views ranging from days to years.
Catflakes
Built because sometimes a small, strange visual toy is reason enough.
A Canvas proof of concept for falling radial cat snowflakes with wind, density, speed, and built-in cat controls.
Why I Made This
Just because!
The proof of concept uses plain HTML, CSS, and Canvas instead of a heavier framework.
It currently supports four built-in cats, selectable cat types, wind drift, density controls, speed controls, and falling animation.
Better NYC Map
Built because route planners miss how New Yorkers choose between walking, transfers, and transit modes.
A web-based NYC transit map and route planner for real commuting tradeoffs.
Why I Made This
I wanted a transit planner that reflects how people actually make NYC routing decisions, not just the mathematically shortest trip.
The project is designed around options like walking farther to avoid a transfer, preferring above-ground routes, mixing subways with buses or ferries, and comparing best-case versus worst-case transfer-heavy trips.
Longer-term, it can support native app packaging, service-alert-aware routing, accessibility preferences, and better multi-modal planning across NYC and regional transit.
Rent Stabilized Map
Built because apartment search decisions need clearer public-data context.
A mapping and research project for understanding rent-stabilized housing signals, building records, and neighborhood-level search tradeoffs.
Goals
Make public housing data easier to scan during apartment research.
Help compare buildings, neighborhoods, and listing signals without treating any single dataset as definitive legal advice.
Keep the public portfolio version focused on product goals and data approach rather than linking the live project.
Pet Sticker Maker
Built because Catflakes needs clean reusable cat-head assets without manual image editing.
A utility that turns pet photos into transparent sticker assets for reuse in other apps.
Why I Made This
I built this as an asset-generation component for Catflakes.
The goal is to let users turn their own cat photos into reusable sticker pieces without manually cutting out heads, removing backgrounds, or preparing transparent PNGs.
This project is currently paused while the Catflakes renderer is stabilized and support for bundled custom PNG and SVG assets is prioritized.
Colony Cat Management
Built because community cat caretakers need better ways to recognize and track individual cats.
Computer-vision identification and tracking for community cat caretakers.
Why I Made This
I live in a part of Manhattan with several cat colonies, I have traveled extensively in places with large street cat populations, and I simply love cats.
This project explores whether computer vision can help identify individual cats over time. My hope is that it can eventually support TNR efforts and help volunteers better monitor colony health, population changes, and cats that may need attention.
Personality Systems Research
Built because personality tools should show gradients, not just labels.
A personality assessment experiment combining scaled Enneagram scoring and longitudinal pattern tracking.
Why I Made This
Most personality tests give you a label. I wanted something a little more nuanced.
This project explores measuring personality traits on a spectrum rather than forcing people into a single category. Eventually I would like users to be able to save results and see how those patterns change over time.
Raspberry Pi + AdGuard Home
Built because I wanted network-wide ad blocking and a better understanding of my own infrastructure.
Network-wide DNS filtering and ad blocking with a Raspberry Pi 4B, Raspberry Pi OS Lite, AdGuard Home, and a Netgear router.
Why I Made This
I wanted to get rid of ads across my network and learn more about managing my own infrastructure.
This project documents my Raspberry Pi and AdGuard Home setup, the mistakes I made along the way, and the lessons learned getting everything working correctly.
Wearable Computing
Built because traditional watches could be augmented without becoming full smartwatches.
Exploring modular sensors, passive power systems, and retrofitting traditional watches with modern tracking.