home / projects / wedding-planner
Case 04 / 06 · Delivered-To: a real business
A business site where the deliverable was independence.
Wedding planning is sold on trust and visuals. This build gave a planning business a fast, elegant showcase — and, more importantly, a CMS-backed admin so the owner updates services, galleries and testimonials without calling a developer.
- Project
- Client website
- Role
- Full-stack developer
- Timeline
- 2023 — 2024
- Stack
- Django · Python · CMS · SQL
The brief
The business needed what most small service businesses need: look as professional online as they are offline, be findable, and convert visits into enquiries. The hidden requirement — the one that decides whether a site is alive in a year — was that the owner had to be able to change everything customer-facing themselves: new packages, fresh event photos, updated testimonials.
The constraints
- Image-heavy by nature, mobile-first by audience. Wedding galleries are large; the visitors are on phones. Performance had to be engineered, not hoped for.
- Content models over free-form pages: "add a service" should be a form with fields, not a blank rich-text canvas that slowly destroys the design.
- Enquiries are the product. The contact flow needed validation, spam resistance and reliable delivery — a lost enquiry is lost revenue.
- Local search mattered: semantic markup, per-page metadata, clean URLs.
The build
- Django end to end: models for services, packages, gallery albums and testimonials; the Django admin, customised with sensible field help-text and image previews, became the owner's CMS. Structured models mean the design survives every future edit.
- Gallery performance: server-side thumbnail sizes, native lazy-loading with explicit dimensions to prevent layout shift, and compressed derivatives so the album page stays light even as albums grow.
- Enquiry pipeline: validated forms with honeypot spam protection, persisted to the database and emailed — so a mail hiccup never loses a lead. (The same honeypot pattern guards the contact form on this site.)
- SEO groundwork: semantic headings, descriptive alt text, per-page titles/descriptions and sitemap coverage.
The outcome
A site the owner runs independently: seasonal packages, fresh galleries and new testimonials go live without developer involvement, and enquiries arrive validated and logged.