Bottled Story | Custom WordPress Memory Preservation App by David OgunbolaBottled Story | Custom WordPress Memory Preservation App by David Ogunbola

Bottled Story | Custom WordPress Memory Preservation App

David Ogunbola

David Ogunbola

Overview

Bottled Story is a memory-preservation web app where people answer thoughtful prompts and save their stories as "bottles" on a personal shelf, to keep and share with the people they love. Each memory can be told through writing, a photo, a voice recording or a video.

My role

Sole designer and developer. I designed the logo and homepage in Figma, shaped the app experience with the client, and built the entire platform as a custom WordPress application, with no page builders or ecommerce plugins.

The challenge

Recording your life story is emotional and easy to put off. The app needed to make starting feel effortless, make saving a memory feel meaningful rather than like submitting a form, and give families a simple, private way to share those memories. It also had to run on a custom foundation, since standard plugins like WooCommerce didn't fit the product's structure.

Try it before signing up

Visitors can pick a prompt on the homepage and start writing immediately, without an account. When they finish, a cork animation plays, and after they sign up, their memory is waiting on their new shelf as a draft. This removes the biggest barrier: a sign-up form before any value.

Prompts, not blank pages

Memories are organized into six categories, such as Childhood Memories and People Who Shaped Me, each with guided prompts like: What smell instantly takes you back to childhood?
Six memory categories, each opening a set of guided prompts.
Six memory categories, each opening a set of guided prompts.
Photo memories are stored on Cloudflare R2 to keep the app fast.
Photo memories are stored on Cloudflare R2 to keep the app fast.

Placing the cork

Finishing a memory triggers a custom GSAP celebration with a word-by-word reveal, turning "save" into a small emotional moment. Users can later uncork a bottle to edit it.
Sealing a memory onto the shelf.
Sealing a memory onto the shelf.

The shelf and sharing feature

Every user gets a shelf showing their bottles, filterable by category and searchable. Shelves can be shared privately through a link, email or QR code, and shared shelves open on a clean public page with a gentle call to start your own.

Designing for every screen

Early ideas relied on hover effects, which don't work on phones. I recommended keeping titles always visible with a single tap to uncork, which works naturally on both mobile and desktop.

Under the hood

Custom WordPress REST API, custom post types and fields, built as must-use plugins
Vanilla JavaScript front end with in-browser audio and video recording (RecordRTC)
Cloudflare R2 for media storage and Turnstile for bot protection
Stripe subscriptions, including a lifetime plan and a gift redemption flow
Transactional email via Resend and marketing sync with Brevo
GSAP animations and page-scoped CSS to keep every screen independent

See it in action

Result

Bottled Story is live at bottledstory.com with real users, taking payments and gifts through a fully custom stack built around the product rather than bent to fit a plugin.
Like this project

Posted Sep 29, 2026

A calm, custom WordPress app where people save life stories as bottles on a shelf, with guided prompts, voice and video recording, and private sharing.

Likes

0

Views

2

Timeline

Apr 14, 2026 - Jun 28, 2026