StackMoth/Work/SILK

Design engineering

Print artwork authored as code, exported by a browser

Site hoardings and exhibition banners for SILK Residencies and Mall, a Baili Investments development in Rajagiriya. No page-layout software was involved. Every board is an HTML file.

Client
Baili Investments, SILK Residencies & Mall
Delivered
2 hoarding boards, 7 exhibition banners
Board sizes
6000 x 5500 px (24:22) and 7500 x 3000 px (5:2)
Banner size
4724 x 10630 px each
Authored in
HTML and CSS, no page-layout software
Exported by
Playwright driving headless Chromium

All case studies

Seven SILK Residencies and Mall exhibition banners shown side by side, dark green and gold, each with a headline, imagery and a hotline number.
The delivered banner set, rendered from the same HTML that exports at 4724 x 10630 px for print.

The artwork is a web page

Each hoarding board and each banner is a single HTML file with its own CSS. There is no InDesign document, no Illustrator file and no binary artwork to lose. A revision is a text edit, the version history is the repository, and two people can see exactly what changed between proofs.

SILK hoarding board one: gold SILK wordmark on deep green, Baili Investments lockup, tower render at dusk and a hotline number.
Board 1, 24:22. Rendered here at 1200 px from the file that exports at 6000 px.
SILK hoarding board two in a wide 5:2 strip format, gold wordmark on deep green with the development name and hotline.
Board 2, 5:2, from the same system at a completely different aspect ratio. Same CSS, no re-layout.

One source, any output size

The board is laid out against its container, not against the viewport, so the screen proof and the printed hoarding are the same layout at different scales.

The technique is container-type: inline-size on the board element with container query units used throughout for type, spacing and positioning. Nothing is re-laid-out for print and there is no separate print stylesheet to fall out of sync. The two images above were rendered at 1200 and 1600 pixels wide from the identical files that produce the 6000 and 7500 pixel print exports.

Exported in tiles, with the tiles checked

A browser will not screenshot a 7500 by 3000 pixel canvas in one pass at print device pixel ratio. The export script drives Playwright, captures the page in 2000 pixel tiles and stitches them back together.

Each tile's dimensions are asserted against the expected value after rounding before it is accepted. A capture that silently comes back short fails the export instead of being composited into artwork that goes to a printer, which is the kind of error that is very cheap to catch here and very expensive to catch on a hoarding.

Aerial view of the SILK development under construction in Rajagiriya, green safety netting across the frame, two tower cranes, with branded hoarding visible on the structure and the Diyawanna lake beyond.
The development in Rajagiriya, August 2026, with hoarding installed on the structure.

AI-assisted, human-accountable. AI tools contributed significantly to the implementation described here. The specification, the review of every change, the production operation and the accountability are mine.

Next case study

Ledgerline