For Maple & Main, I started with what happens after a guest scans a code at the table. The destination should be a readable menu, not another document the guest has to pinch and drag around.

The fictional diner demo puts 24 items across six categories into a phone-first layout, with sticky category navigation and weekly specials. The part I enjoyed most was giving the printed table card a place in the same site.

01 / FIELD NOTESThe menu is the destination

The menu items and the business information live in data.ts. React renders that data into the page; the original application uses TypeScript, Vite, Tailwind CSS v4, and a static deployment on a Cloudflare Worker.

The original design pairs a cream background and maple-amber accents with a Playfair Display wordmark. The menu remains the reason for opening the page. The surrounding diner identity gives it context rather than replacing it.

The project page has a small interactive menu example. Its sample dishes and search control are new explanatory material, not evidence of the original menu data or a new feature shipped to the diner demo.

02 / FIELD NOTESThe table card is another presentation

In the original build, the table card is a route on the site with a print stylesheet. The write-up describes opening that page and printing a 4×6-inch card, instead of maintaining a second design file for the same destination.

The composer below is a new authored print example. Change the heading, switch between the screen and card views, and open or save a printable HTML version. It contains a real QR code pointing to the published fictional demo, not to the offline page you are reading.

SCREEN → PRINT / LOCAL COMPOSER

Same destination. A different surface.

Edit the sample heading. Preview the card, then open or save its standalone HTML.

NEW AUTHORED PRINT EXAMPLE

The QR opens the published fictional demo. It does not identify a table or add analytics.

TABLE-CARD ROUTEScreen-only interface
Fictional diner / reference sample

Maple & Main

The menu starts here.

Scan for the published demo

maplemain.mroot.coNEW PRINT EXAMPLE
Not the original stylesheet.
The preview approximates the screen/print distinction. The standalone sample has its own 4×6-inch print CSS; it is not a repair of the incomplete published excerpt. Check printer settings and physically scan before use.
Printing selects a different stylesheet. Page controls disappear; the card and QR remain. The QR points at the published demo, not this offline page. No per-table tracking is included.

No scan tracking is added. The controls operate locally; the only external destination is the address encoded in the QR, which someone would have to scan or open deliberately.

03 / FIELD NOTESWhat the original stylesheet tells us—and what it does not

The supplied excerpt shows an @media print rule, an @page block, a .no-print selector, and the .print-card layout. However, it is missing numeric values for the paper size, card dimensions, padding, and border. Those omissions are still present in the retrieved public article.

The surrounding prose specifies 4×6 inches. That does not establish every other missing value. The original excerpt is therefore kept unchanged below, not silently turned into runnable replacement CSS.

src/index.css · incomplete original excerpt, not runnable / CSS
@media print {
  @page {
    size: in in;
    margin: 0;
  }
  .no-print {
    display: none !important;
  }
  .print-card {
    width: in !important;
    height: in !important;
    margin: 0 auto !important;
    padding: 0.in !important;
    border: px double #000000 !important;
    page-break-inside: avoid;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    /* … */
  }
}
Source excerpt · not executed in this design sample · scroll code horizontally on narrow screens

The printable example above has its own explicit dimensions and spacing. They are new choices for demonstrating the idea, not recovered values from src/index.css.

As a general implementation note, MDN documents using @media print to change printed styles and @page to set page dimensions and margins. That supports the technique, not a guarantee about a particular printer. The sample still asks you to check paper size, scaling, margins, and QR readability before actual use. Read MDN's printing guide.

04 / FIELD NOTESThe next improvement is the editing workflow

A typed content file keeps the data together, but a diner owner still needs a developer or a code-editing workflow to change it. The original next step was a small CMS or a sheet-backed content source.

The original article also names per-table QR codes and scan analytics as possible future work. The documented card points at the deployed demo; it does not establish that those tracking features exist. The reference deliberately uses one fixed destination and no tracking parameters.

05 / FIELD NOTESKeep the handoff in view

The phone menu and table card are useful because one leads to the other. A polished card with a poor destination is only half a design, and a good menu is less useful when its printed link is wrong.

This build explores that handoff. Before using it for a real business, the remaining work is concrete: approved content, an editing process, a verified destination, and a physical print-and-scan check.

Source, dates, and what this page verifies

This rewrite is based on the supplied fictional-business project and article originally published July 17, 2026. Original dates and source addresses are retained. The original repository and live application were not audited.

The public articles were checked again on September 29, 2026: the unusual Huron shadow class and missing Maple print-CSS numbers remained visible. Both original excerpts are preserved, not silently repaired.

New phone/menu illustrations, sample menu data, category/search controls and print-card composition are labeled teaching examples. No photographs, client results, reviews, delivery or production feature claims are invented. The fixed sample QR points at the published Maple demo; no table ID or analytics are added.

Read docs/batch-5/SOURCE-REVIEW.md for sample CSS choices, retained code, external documentation and publication work. Print-media checks do not replace a physical printer/scan check.

Open the original published source ↗