Web Design · Brandon Williams

DSC Family Reunion

Visit the live site
DSC Family Reunion

Overview

DSC Family Reunion is the site for a multi-generational family reunion — a Royal Caribbean cruise in 2026 for the Deal, Shepherd, Coleman, and Penland families. Built for Tek's brother Brandon, who coordinates the event.

Framework

  • Astro 4
  • @astrojs/vercel

Data

  • Neon (serverless Postgres)
  • Cloudflare R2

Visualization

  • D3

Motion

  • GSAP
  • Lenis

Hosting

  • Vercel

The Problem

The 2025 reunion's site was built in Webflow, which was fine for static info but couldn't support what the 2026 cruise reunion needed.

Key challenges included:

  • Needed a real guestbook with photo uploads, not a form plugin
  • Needed an interactive family tree spanning 7 generations and 116 people
  • Webflow could not support either without third-party workarounds

The Solution

Rebuilt on Astro with a real backend underneath, while keeping the visual identity the family already recognized.

Guestbook

Neon-backed guestbook with Cloudflare R2 photo uploads, portrait/landscape-aware card layout.

Family Tree

116 people across 7 generations and 4 family branches, rendered with D3 — drag, zoom, expand/collapse, search, and per-family filtering.

Visual Continuity

The old Webflow CSS was ported forward as the base style layer instead of rebuilt from scratch, so the site the family already knew didn't change identity, just capability.

Under the Hood

The family tree is the whole engineering problem

116 people across seven generations and four family branches does not fit on a screen, and it does not fit in a static image either. It renders with D3 as an interactive graph: drag to pan, zoom, expand and collapse a branch, search by name, and filter to one of the four families. The interaction design matters more than the rendering here, because the default state of a tree that size is an unreadable wall. It opens collapsed and lets people walk their own branch.

Photo uploads that do not touch the server

The guestbook takes photos from phones at a family event, which means large files over bad connections. Uploads never proxy through the app. The browser requests a short-lived presigned URL and sends the file straight to Cloudflare R2. The server only ever handles the resulting record. It never touches the bytes. Cards render portrait or landscape aware, so a vertical phone photo is not letterboxed into a horizontal frame.

Keeping the site the family already recognized

The 2025 reunion site was Webflow. Rebuilding on Astro could have meant a visual reset, and for an audience that is largely not technical, a site that suddenly looks like a different site reads as the wrong link. The existing Webflow CSS was ported forward as the base style layer instead of being rebuilt, so the identity stayed put and only the capability changed.

Motion that stays out of the way

GSAP handles reveals and Lenis smooths the scroll, both tuned well down. On a site people open to find a date and a hotel, animation that delays information is a cost, not a feature.

The Outcome

Live at dscfamilyreunion.com ahead of the July 2026 cruise, with the guestbook and family tree both fully interactive.

Let's work together

Book a quick 15-min intro call to see if we're a fit.

Currently available for new projects