Skip to content

James Han

Orange County, California

Full-stack developer

hanjames1999@gmail.com · jameshan.fyt.life

Websites · Apps · Automations

for restaurants and small businesses in Orange County.

I build the whole thing, from the screen your customers tap to the server behind it, and I keep it running after launch.

Email me See the work
QR code for https://jameshan.fyt.life

Scan for this page, with photos of the work:
jameshan.fyt.life

Three mobile restaurant menus showing Korean, English and a right-to-left Arabic layout.
Scan-to-open menus in 13 languages, special no. 1 below.

House specials

1

Multilingual QR menus

13 languages

A restaurant menu in English with language switching and an allergen filter. The same restaurant menu in Arabic, with the entire layout reading right to left.
A menu in English, as a guest sees it at the table · The same menu in Arabic, laid out right to left

Restaurant guests read many languages, but most menus come in one. Guests scan a code at the table, read the menu in their own language, and flag the dishes that contain allergens they avoid. I built it on my own initiative for the multi-brand restaurant group where I work; working versions for all 8 brands are ready for the group’s review.

Includes: 13 languages, one-tap switching, right-to-left Arabic, Farsi and Urdu · allergen filter · each brand’s own colours and photos · print-ready PDFs in every language · QR codes per brand and location · one Python build pipeline

8 brands · 13 languages · a printable menu in every language for every brand

See all six screens
A mobile directory with links to each restaurant brand’s menu.
The directory: every brand’s menu in one place
The English menu with dish photos, language choices and allergen controls.
A menu in English, as a guest sees it at the table
The Arabic menu with right-aligned text and mirrored navigation.
The same menu in Arabic, laid out right to left
An allergen selection sheet opened over the menu.
Choosing an allergen to avoid
Menu dishes marked with a warning when they contain the selected allergen.
Dishes that contain it are highlighted
A different restaurant’s Korean menu with its own orange colours and food photography.
Another brand’s menu, in Korean

What it does

  • 13 languages, switched with one tap; Arabic, Farsi and Urdu flip the whole layout to read right to left.
  • An allergen filter: tap an allergen to flag every dish that contains it, or hide those dishes entirely.
  • Every brand keeps its own colours, logo and photos on the same system.
  • Print-ready PDFs of every menu in all 13 languages, with typography rules for each script.
  • QR codes for each brand and location that open the right menu from the table.
  • One build pipeline (Python) generates the mobile site and every PDF.
2

Fyt: run club and gym tracker

370+ users

Fyt’s App Store screenshot “Every mile, mapped”: the club feed with a run’s route map, distance, pace and time, beside its heart rate and calories. Fyt’s App Store screenshot “Every lift, logged”: a finished gym session with a muscle diagram, sets, total volume, records and the exercises done.
Two of the screenshots from Fyt’s App Store listing

Most fitness apps are built for one person. Fyt is built for a group: friends who run and lift together. Members track their runs and gym sessions, and Fyt announces each one live in the club’s iMessage group chat, so the crew can cheer every mile and every PR, including members who don’t have the app.

Includes: iPhone and Apple Watch app · server and database · public website · a live subscription tier

On the App Store since July 2026 · 5.0 from 9 ratings · version 1.0.43 released September 21, 2026

370+ users as of September 2026.

View on the App Store fyt.life
See all four screens
Fyt’s App Store screenshot “Every mile, mapped”: the club feed with a run’s route map, distance, pace and time, beside its heart rate and calories.
Every mile, mapped: the route, pace and time for each run
Fyt’s App Store screenshot “Record your run, live”: GPS recording on a map, with the same run on an Apple Watch.
Record your run, live, on iPhone and Apple Watch
Fyt’s App Store screenshot “Every lift, logged”: a finished gym session with a muscle diagram, sets, total volume, records and the exercises done.
Every lift, logged: sets, volume and the muscles trained
Fyt’s App Store screenshot “Track your lift, live”: a gym session in progress, with weights and reps checked off set by set.
Track your lift, live, set by set

All four screens are from Fyt’s App Store listing.

What I built

  • The iPhone and Apple Watch app (Swift): live GPS run recording with pace, distance, elevation and heart rate; a gym logger with sets, reps, weights and a rest timer; workouts imported automatically from Apple Health.
  • The server and database (TypeScript, PostgreSQL): the API plus background jobs that import workouts, find personal records and update leaderboards, hosted on Fly.io.
  • The public website and a live subscription tier through Apple, with a shareable page for every workout.

Packages for restaurants

Fixed price, in writing, before any work starts.

Multilingual QR menu

from $1,200

A scan-to-open menu in up to 13 languages, an allergen filter, dish photos, print-ready PDFs in every language, QR table cards, hosted. You send the menu and photos; I do the rest.

Ready in about two weeks.

Restaurant website

from $2,500

Menu, hours, map, photos, online-ordering and reservation links, your Google Business listing tied in. Fast and mobile-first, hosted, with two rounds of revisions.

Ready in three to four weeks.

One automation

from $900

One repetitive task automated end to end: reservation reminders by text, a daily sales summary by email, review requests after a visit, low-stock alerts, or syncing two tools. Starts with a one-week paid pilot.

Ready in one to two weeks.

Add-ons

Monthly care

$100 a month

Hosting, updates, small changes, and one menu or price update a month.

Custom work

fixed quote

Anything else gets a fixed quote after a short conversation; $65 an hour only for open-ended maintenance.

How it works

  1. 1

    We talk for twenty minutes about what is slowing your business down.

  2. 2

    You get a fixed quote in writing within two days.

  3. 3

    I build it, you review it, we launch. Monthly care if you want it.

About James

I’m James Han, a full-stack developer in Orange County, California. I build software end to end: the screens people tap, the server and database behind them, and the launch, whether that is the App Store, a website or a printed QR code. Then I keep it running.

Tools: TypeScript, Node.js, PostgreSQL, Swift, Python, Fly.io, Cloudflare, GitHub Actions.

Tell me what’s slowing your business down.

I’ll suggest the simplest fix, usually the same day.

Email me hanjames1999@gmail.com
App Store

James Han · Orange County, California · No page builder, no trackers. · © 2026