Pho Sen
What a neighbourhood pho shop's site could look like
A full site for an independent Vietnamese restaurant — a searchable, filterable menu where every dish has a photograph and a price, a hero that moves, and a route to order from any screen. Pho Sen is our own kitchen rather than a client's, so the name, address and phone are invented and it can be shown to anyone.
The live site, running here. Scroll it, play the video, click through.
What is in the build — this one is ours, so there are no client outcomes to report
4
Pages designed and built
29
Dishes, each with a photo
7
Menu categories, filterable
0
Plugins
Static — nothing to update or break
The situation
Independent restaurants tend to end up with one of two web presences: a template that has not been touched since it launched, or a landing page bundled free with whichever ordering platform they signed up to. Both treat the menu as a PDF and the food as an afterthought.
This build starts from the opposite premise — that the menu *is* the website. Every dish gets a photograph, a description, a price and a route to order, and the whole thing is searchable and filterable rather than being a scan of a laminated card.
The restaurant itself is ours. The name, the address, the phone number and the reviews are invented and nothing on the site links out, which is exactly why it can be handed to any operator without putting a competitor's photography, prices or reviews in front of them.
What was built
- 01
The menu as the main event
Twenty-nine dishes across seven categories, with a search field, a sort control and a category rail that explains what each section actually is. Hover reveals the description and a quantity stepper; on touch it is all visible instead of hidden behind a hover state that will never fire.
- 02
A hero that moves
A five-second cinematic shot of a bowl being finished, which then holds on its final frame rather than looping. Muted, inline, with a poster matched to that last frame so there is no flash between video and still, and no motion at all under prefers-reduced-motion.
- 03
Photography direction
Every dish shot on a dark studio ground so the food carries the page, plus cut-out bowls for the favourites carousel. Directed and generated for this build rather than pulled from a stock library of other restaurants' food.
- 04
Type that can spell the menu
Vietnamese needs a font subset most display faces skip, so the whole stack was chosen for glyph coverage first — a menu that cannot render its own dish names is not a menu.
- 05
Responsive down to 320px
Mobile and tablet passes done by measuring the DOM rather than eyeballing screenshots — column counts, touch targets and hover-gated UI checked at every breakpoint, including the 375px phones a 380px breakpoint quietly catches.
Where it landed
This is the piece we show a restaurant owner who cannot picture what they are buying. It is a complete site rather than a mood board — the menu filters, the search works, the video plays.
Because the restaurant is ours, there is no client to clear it with and nothing to take down. It stays up, and it stays current.
More work
Find Out What You’re Missing
Thirty minutes. We’ll find where the work is leaking — unsold estimates, response time, or a database nobody has touched in three years — and what it would cost to fix. If it isn’t worth it yet, we’ll tell you that instead.
No sequence, no newsletter. One reply from the person who’d build it.


