OurLuuBeginning

Role: Design, Frontend

Team: Me, myself and I (with guidance from K)

Tools: Figma, React, Styled Components

Timeline: 2019

Objective

Create a wedding website to inform guests about our wedding details and document our marriage journey.

Requirements

  • Guests can access all relevant wedding info

  • Ability to fully customize the UI and add pages for capturing the wedding after it’s over

  • Pages to include: Homepage, Schedule, Accommodations, Registry, Wedding Party, Photos, Proposal

Process

  1. Build proposal poem page to give K at engagement

  2. Get engaged 💍 (9/22/19 at Longwood Gardens)

  3. Determine necessary wedding info with K

  4. Design mocks and iteration

  5. Development and refinement based on K’s feedback

  6. Share with guests on our ‘Save the Date’ and invitation

Design

K and I wanted the site to reflect our connection as a couple and prefer a minimalist design. I laid out the mocks in Figma; iterating through different designs and color patterns. We landed on a cursive primary font and outline icons tied together with a smooth blue background.

Development

I built the site in React, allowing me to leverage npm packages to create the scroll effect for the proposal poem. I also put int two different types of photo galleries - one for the proposal pics and the other for the photo collage.

Reflection

It has been a very fun project and I loved collaborating with K to tell our story. Creating the site from scratch allows us to craft the design to fit our aesthetic and I got some good practice in both design and development. Can’t wait for the wedding!

Site Info

What is this?

Ryan Luu's Portfolio & Blog

Why does this look familiar?

The design mimics Dropbox Paper. It's what I use to organize my daily process, so I thought it would be a fun challenge to recreate it's ux from scatch for my personal site.

How was it built?

This site was custom coded with React Hooks and Gatsby. I included a few unique features that I enjoy, like hovering over videos to initiate playback.