James Han, Freelance software developer

Taking new projects · November 2026

James Han
Start a project

I reply within one business day.

A restaurant menu in English, with the language choices, a button for avoiding an allergen and dish photos with prices.
A restaurant menu I built
View on the App Store. Pressure’s group feed: a run’s route map, distance, pace and time, beside its heart rate and calories.
Pressure, my iPhone and Watch app

What I build

  • Restaurants

    • Menus in your guests’ languages, with allergen filters
    • Websites tied to your POS’s ordering
    • POS features, software and automations
  • Automations and integrations

    • Alerts and daily summaries
    • Connecting your platforms and tools
    • Bots and scripts for daily life tasks
  • Websites and web apps

    • Business sites on your own domain
    • Booking, ordering and payments
    • Dashboards and internal tools
  • iPhone and Apple Watch apps

    • Native iPhone and Apple Watch apps
    • The server, database and sign-in
    • App Store launch and updates
  • Custom

    Software custom-built for you.

    • Built around how you work
    • For any device or platform
    • Scoped, built and supported end to end

See what each one includes

Portfolio

I built working menus for all 8 brands of the restaurant group where I work.

  • 13 languages · the menu’s language list
  • 8 brands · the menu repository
  • Built in September 2026

At the table, guests:

  • Scan a code.
  • Choose their language.
  • Filter by the allergens they avoid.

How I built the menus

Open the live menus

Pressure, a workout streak app

Pressure is a weekly workout streak you keep with friends: it tracks runs and lifts, and its bot, runbot, posts each run in the group’s iMessage chat.

  • 520+ users · as of November 11, 2026 · Pressure’s production database
  • 5.0 from 11 ratings · 5 reviews · App Store
  • On the App Store since July 2026 · version 1.1.3, November 9, 2026
View on the App Store. Pressure’s group feed: a run’s route map, distance, pace and time, beside its heart rate and calories.
A run in the feed, with its route, distance, pace and heart rate, from the App Store screenshots
View on the App Store. A message from runbot, Pressure’s bot, in a group’s iMessage chat: James Han ran 20 miles, crossed 100 total miles and stacked three milestones, including passing another runner on the year’s leaderboard. Friends reacted with fire and a heart.
A run posted to the group’s iMessage chat, with milestones and the leaderboard; another runner’s name is hidden
View on the App Store. Pressure’s gym feed: a finished push session with a diagram of the muscles trained, and each exercise with its sets, weight and reps.
A finished gym session: the muscles trained and each exercise’s sets, weight and reps, from the App Store screenshots
View on the App Store. Pressure’s Streaks tab: today’s workout counted in three streaks, then this week’s streaks with friends and a group, each person’s days ticked off and the weeks kept so far.
This week’s streaks with friends and a group, from the App Store screenshots

How I built Pressure

View on the App Store

Tell me what you want built.

I reply within one business day.

Start a project