Sleepy Bird Sanctuary is not a real place
It is a working concept built by Orange Fin Agency to show what we make for venues that sell timed entry.
Everything on this site is real work. The ticket flow runs, the sessions have capacity, the events are structured content, the whole thing is static and ships under 35 KB of JavaScript. The only thing that does not happen is the payment, because there is nothing to pay for.
What we built
A place-first opening view
A responsive full-screen photograph establishes the glasshouse immediately, with event discovery directly below it and planning links within reach.
A visitor understands the atmosphere before being asked to choose. The image is also the page's measured LCP element, so the first impression and the performance budget point to the same thing.
A session-based ticket flow
Date, session, quantity, check. Availability, capacity bands, per-session pricing, and an age rule that blocks the wrong combination and says why.
This is where the money is and it is usually the worst page on a venue site. It runs entirely in the browser tab and sends nothing anywhere.
Four bands of colour, one per session
The page moves from cold dawn to full light to a drained afternoon to amber evening as you scroll.
The structure encodes something true about the day rather than decorating. The quietest session gets the quietest colour, which is a decision that sells the least commercial slot.
Events and research as structured content
Eleven write-ups behind strict schemas. A malformed entry fails the build rather than rendering an empty card.
An operator adds an event without a developer, and cannot accidentally publish one with a missing price or no alt text.
A gallery that does not move
Sixteen images in a masonry grid, each holding its exact shape before it loads, with a lightbox that works entirely from the keyboard.
Images arriving late are the most common cause of a page jumping under someone as they reach for a link.
How it is built
Astro, static output, no UI framework. Four small scripts, and the site works without any of them. Hosted on Cloudflare behind a content security policy with no unsafe-inline.
- 6.4 KB
- of JavaScript across the whole site, gzipped
- 18
- static pages built from one content system
- Zero
- accessibility violations, axe on all 18 pages
- Zero
- input fields anywhere in the repository
Those four numbers are measured on every commit, not written down once. The build fails if the JavaScript grows past its budget, if any colour pair carrying text drops below WCAG AA, if a page ships an inline style the policy would block, or if a single accessibility violation appears on any route. It also fails if anybody adds a field shaped like a payment field, which is the check we are most attached to.
Built against a published security and performance standard, which is the part most agencies do not show you. Where that standard and the design brief disagreed, the disagreement is written down in the repository along with the measurement that settled it.
What we would do for you
We build sites for venues, attractions and event businesses. We start with the booking flow, because that is where the money is and it is usually the worst page on the site.
If the flow you just went through is better than the one you are running, that is the whole point of us building it.