Villas Cafe

Villas Cafe is a specialty coffee shop and all-day kitchen in Finsbury Park. We built a single-page site with no framework at all, and put the entire menu into structured data at item level - CafeOrCoffeeShop, Menu, MenuSection, MenuItem and Offer, each dish carrying its own price so search engines and assistants can read the menu rather than guess at it.

Sector
Cafe
Location
Finsbury Park, London
Year
2025
Built with
Vite · TypeScript

The problem

Most cafe sites publish the menu as a picture or a PDF, which means no search engine can read a single dish or a single price. For a business whose entire proposition is what it serves and what it costs, that is the most valuable information on the site being thrown away.

What we built

  • The whole menu as structured data: Menu, MenuSection and MenuItem, with an Offer and a price on each item
  • CafeOrCoffeeShop markup carrying opening hours, geo coordinates and postal address
  • An OrderAction with a typed EntryPoint for the delivery ordering path
  • A single page with story, menu, gallery and visit sections, so there is one URL to rank and share
  • No framework at all - Vite and TypeScript, served as finished files

The menu is the product, so the menu is the markup

Ask a search engine what Villas Cafe serves and it can answer, because every dish on the page is a MenuItem inside a MenuSection, and every one of them carries an Offer with a price. That is unusual. The common pattern is a photograph of a menu board, or a PDF, both of which are opaque.

This matters more every year. When somebody asks an assistant what to eat near Finsbury Park, the places whose menus are readable are the places that can be recommended.

One page, done properly

Not every business needs twelve pages. A cafe has one story, one menu, one gallery and one address, and splitting those across separate URLs would dilute rather than help. So this is a single page with four sections, one URL that collects all the links anyone sends it, and anchor navigation for people who want to jump.

No framework

There is no React here, and no Astro either. The site is TypeScript compiled by Vite and shipped as finished files. For a site with no interactive state beyond a menu toggle, a framework would have been weight with nothing to carry.

Visit Villas Cafe

Tell us what you need built.

A short call, a straight answer on scope and cost, and a fixed quote. No retainer, no monthly fee, no commission on your orders.

Email usGet a fixed quote

Privacy choices

This site measures which pages get read and which links get used, so we know what to write more of. It is anonymous: no advertising, no profiling, no data sold or shared, and nothing follows you to other sites.