About the Project
Liam Roadley films weddings across South-East Queensland and Northern New South Wales - observationally, from the edges, as fine-art films rather than highlight reels. When he came to Platform21 he had six reels and very little else. No website, no search history, no reviews, no photographs, no pricing, and no notes telling us which couples or which venues the reels showed.
The brief was to build the brand and the site from that standing start, and to have both read as considered work rather than as a vendor listing. The site went live at velafilms.com.au on 4 August 2026.
The Challenge
Launching a premium creative brand from nothing brought a specific set of problems:
- No existing site meant no search history, no backlinks, and no reviews to build on
- The six reels arrived with empty title, client and venue fields, so nothing could honestly be labelled
- Wedding videography in South-East Queensland is a crowded market where incumbents compete on volume and page count
- The positioning had to signal fine art. A site that looked like every other wedding vendor would undercut the work before a couple pressed play
- The service area is a corridor across two states, from the Brisbane bayside through the Gold Coast and Tamborine to the Tweed and the Northern Rivers - too broad for one page, too specific for generic suburb targeting
- Pricing, testimonials and portraits did not exist at the start of the build, so the site had to launch honestly without them and absorb them later without a rebuild
Our Approach
-
Brand Creation: We built a seven-colour neutral palette - bone through to film black - with Tinos for display and Geist for body text. The wordmark is drawn in HTML and CSS rather than shipped as an image, so it stays sharp at any size and costs nothing to load. The rules are deliberately austere: square corners, no shadows, and footage is the only colour allowed on the page. The design gets out of the way of the film.
-
SEO Architecture: Three silos - the collection, the locations, and the journal - with a hub page each and internal links that reinforce the hierarchy. Twenty-seven pages at launch, planned as a graph before a line of copy was written, with cannibalisation and orphan checks run against it.
-
Venue-Led Local SEO: Nine location pages, each built on real venues with a filmmaker’s read on how the light behaves there. Seventy-three venues were verified against the operators’ own websites before anything was written. Venues that had closed or been renamed were excluded and the exclusions documented, which matters in a market where directories still list venues that shut years ago.
-
Copy and Voice: First person, short sentences, no marketing throat-clearing. Geography is written as geography - the bay, the mountain, the Tweed - rather than as a suburb list. The voice rules live in a brand document that every copy pass reads first.
-
AI Readability: Every page has a markdown mirror at the same URL with a
.mdsuffix, and the site carries anllms.txt. Search and citation crawlers are allowed at the Cloudflare zone while training crawlers are blocked - citable but not trainable. -
Single Source of Truth: The site graph drives meta titles, schema types and the footer’s region links. Prices, packages and FAQ answers are read from data files rather than retyped into pages. A fact exists once, so it cannot go stale in one place while staying correct in another.
-
Automated Publishing: Twelve journal posts carry future publish dates. A GitHub Actions workflow rebuilds the site weekly and deploys to Cloudflare Pages, so posts appear on schedule without anyone touching the repository.
Key Features
Verification Before Publication
The strictest rule on this project was that nothing gets published unless it can be verified. During the build an earlier pass had attributed two unlabelled reels to real named venues that had been inferred rather than confirmed. We found it, removed it, and made the rule explicit in the codebase: no film and no photograph is attributed to a couple or a venue unless the client has confirmed it. The same discipline governs the venue editorial, the FAQ answers - all of them Liam’s own words - and the testimonials section, which stays hidden until real quotes exist rather than being filled with invented praise.
A Site Graph That Keeps Facts in One Place
The footer’s region links are generated from the site graph rather than typed out. When we added a Logan location page after launch, it appeared in the footer, the sitemap, the areas directory and the structured data without anyone editing a list. The same principle covers pricing: the packages page, the meta description and the llms.txt all read the same numbers, so a price change cannot leave a stale figure in the file that AI assistants quote from.
An Enquiry Endpoint That Cannot Overstate Itself
Enquiries post to a Cloudflare Pages Function that sends via the Cloudflare Email Service REST API. Mail goes out from a dedicated sending subdomain rather than the apex, because the apex carries the client’s live Microsoft 365 mail and a second SPF record there would have been a permanent fault in his business email. If a send fails the endpoint returns an error and the couple sees a direct email address - it never shows a thank-you for a message that went nowhere.
Location Pages Built on Places, Not Suburb Lists
Each location page runs 800 to 900 words of genuine regional editorial: how the light behaves on the bay against the mountain, which venues face which way, when the sun drops behind the escarpment and how far to pull the couple’s golden hour forward because of it. The pages disambiguate places couples routinely confuse - Tamborine township on the Albert River is not Tamborine Mountain on the plateau - and cross-link accordingly.
An Interactive Cost Guide
A three-question tool gives couples an honest range for the kind of film they want, based on the client’s real published pricing rather than generic market tiers. It is the enquiry qualifier, and it is linked site-wide from the footer.
Accessibility
Contrast was tested and fixed to WCAG 2.1 AA across the dark plates that the design leans on, finishing at zero critical issues and zero warnings.
Technical Stack
- Astro 6 static site generation with MDX
- Cloudflare Pages hosting, with GitHub Actions for the weekly scheduled build
- Cloudflare Pages Function for enquiries, delivering through Cloudflare Email Service
- Cloudflare AI Crawl Control for the citable-but-not-trainable crawler policy
- Structured data: LocalBusiness, Service, VideoObject, ItemList, FAQPage, BreadcrumbList
- GA4 with conversion tracking, gated to the live hostnames so preview builds stay out of the data
- Markdown mirrors and
llms.txtfor AI assistants - Self-hosted typography, no third-party fonts or trackers on the critical path
Results
Vela Films launched on 4 August 2026 with 27 pages, nine location pages covering the full service corridor, twelve journal posts on an automated weekly release, a working enquiry pipeline, published pricing across nine packages, and an interactive cost guide - built from six unlabelled video files and a logo.
The site has kept absorbing the client’s material as it arrives. Photography was given equal billing with film once his stills came through, twenty-six FAQ answers went in as a single source feeding both the visible copy and the structured data, and a ninth location page was added weeks after launch without touching a navigation list.
The site is live at velafilms.com.au.