🛠 Free Tools & AI Utilities ↗

Get in touch

Tell us a little about your project and we'll follow up by email with licensing and download details.

BowerWedding Venue WordPress Theme

Tell it your date and it tells you the light; tell it the room and it tells you the number.

bower.kilnwp.com LIVE
Bower Open live preview ↗

Overview

Who it is for

Bower is for a wedding venue — a barn, a walled garden, a country house, anywhere that takes one wedding at a time and gets the same two questions in every enquiry.

How many does it hold

Almost every venue website answers with a single number, and that number is wrong for most of the people reading it, because a room holds completely different numbers depending on what you put in it. This computes it: each room carries its real dimensions, and the theme works out for every layout how many people fit.

The figures are whole-room planning figures rather than furniture footprints, and the difference is the thing venues get wrong. A 1.8 m round of ten occupies about 0.9 m² a head as furniture — but a banqueting room needs about 1.6 m² a head once the chairs, getting out of them and a route for the plates are counted. Quoting the furniture number tells a couple your barn seats twice what it seats.

Where a room has a licensed maximum, that wins even where the arithmetic says more would fit, and the page says so. A number on a website is not a capacity if the fire officer disagrees with it. There is no capacity field to type into: that is the point.

What the light will do on the day

The other question, and the one no venue site answers because the answer changes every week of the season. Bower computes it from the venue’s own coordinates: sunrise, the hour the light turns golden, sunset, when usable light is gone, how high the sun gets, and which way it faces at each. A visitor types their date and the page answers for that day.

The astronomy is Meeus’s solar position, checked two ways — against an independent implementation across six places and four dates worldwide, where it agrees to within a few minutes, and against physical invariants that no implementation can argue with: 66.56° solar noon at the equator on the solstice, equinox azimuths at 90° and 270°. It handles the days when the sun does not rise or set at all rather than special-casing them.

A sky that belongs to the date

The background is the sky above the venue at the hour a couple is imagining, computed from that same solar position with a single-scattering Rayleigh and Mie model. Ask about June and the page is the colour a June evening is; ask about December and it is not. It does not animate — it is a sky, not a screensaver.

The handover from sky to paper is measured from the real layout and completes inside the hero’s own padding, because there is no other place it can happen: fade later and the first screen of body text sits on half-lit sky, fade earlier and the hero’s own type lands on paper. Every piece of text on the theme was checked against the pixels actually painted behind it, on a summer sky and a winter one.

What is in the box

  • Rooms with length, width, the proportion of floor already spoken for, and an optional licensed maximum.
  • A capacity table per room, computed for four layouts, with the assumptions printed beside each figure.
  • A light panel on the front page and on every room, answering for any date between 2000 and 2100.

No page builder, no ACF, no build step, no third-party JavaScript, and no photographs required — a room without a cover image gets a plain panel rather than a stock picture of somebody else’s barn.

Classic PHP theme, no build step. Room post type with real dimensions; capacity computed for four layouts from whole-room planning figures (1.6 / 1.4 / 0.80 / 0.65 m² per guest), less a per-room deduction for fixed obstructions, hard-capped by any licensed maximum. No capacity field exists. Solar position from Meeus, validated against PHP date_sun_info across six places and four dates and against physical invariants (66.56 deg solstice noon at the equator, equinox azimuths 90/270, 12h06m equinox day length); crossings linearly interpolated, polar no-rise and no-set days handled by scan rather than special case. Raw WebGL2 single-scattering Rayleigh + Mie sky driven by that same solar position, with Kasten-Young air mass so the horizon stays finite, sun-path and view-path extinction kept separate, and a sky-to-paper handover measured from the layout. Contrast audited against painted pixels on both a summer and a winter sky. No third-party JavaScript. Two self-hosted OFL variable fonts.

What's included

  • Full theme source — every template, style sheet & script
  • One-click demo importer (idempotent, no page builder)
  • Live Customizer controls for copy, colours & content
  • Translation-ready .pot file + RTL stylesheet
  • HTML documentation + a CHANGELOG file
  • Lifetime updates + 6 months support (renewable)

Specifications

WordPress5.6 – 7.0
PHP8.0 – 8.3
BrowsersChrome, Firefox, Safari, Edge (latest)
LayoutFully responsive, mobile → desktop
LocalizationTranslation-ready · RTL included
AccessibilityKeyboard-navigable · prefers-reduced-motion
Page builderNot required — native Customizer
LicenseGNU GPL v2 · single-site commercial

Release

v1.2.0 Tell it your date and it tells you the light; tell it the room and it tells you the number.

The complete, dated version history ships in the theme’s CHANGELOG file. Every purchase includes lifetime access to future updates.

Dioptre Featured

Dioptre

$79

Hold the glasses up to the eye chart and change the prescription, lens and coating — a live WebGPU lens, drawn frames, a face-shape finder and appointment requests.

Healthcare Light
View →
Crumb Featured

Crumb

$69

Watch the loaf bake, see what is coming out of the oven next, and build a cake that shows you what it serves, what it costs and when it can be ready.

Booking Calculator
View →
Alembic Featured

Alembic

$79

Add a drop of water and watch the spirit open — a live WebGPU glass, a shelf of drawn bottles, a flavour finder and tour requests for craft distilleries.

Craft Dark
View →