Back to portfolio
Draft case study2026

Personal Web App

Private Media Archive.

Built a password-protected Next.js media archive with typed content, protected routes, responsive galleries, video lightboxes, long-form story modals, and a structure designed to scale.

Next.jsTypeScriptTailwind CSSProtected RoutesMedia UX
Explore the rebuild

Collections

7 structured collections

Entries

141+ labeled entries

Stack

Next.js TypeScript

Access

Password protected

The System Problem

A CRM rebuild starts by identifying the connected failures underneath the visible symptoms.

Root cause / 01

A growing private archive needed structure without exposing its content

The source material lived across folders, chats, and cloud storage, but a simple gallery would lose chronology, captions, and longer context. The application needed a content model that could organize media, preserve narrative structure, and expand without redesigning every new collection.

Privacy added a second constraint. Routes, media browsing, responsive behavior, and story views had to work like a normal product after authentication while keeping the underlying content out of public discovery and easy to extend through reusable components.

Audit signals

What the system was telling us.

01

Seven collections needed one shared model

02

141-plus entries required consistent metadata

03

Media needed responsive lightbox behavior

04

Long-form context needed reusable story views

05

Private access required route protection

Rebuild Sequence

The work moved from diagnosis to architecture, implementation, and governance—in that order.

Stage 01

Model The Archive

Defined collections, entry labels, media metadata, featured state, story fields, and navigation patterns so new content could extend one stable structure.

Output / Typed content model

Stage 02

Build Protected Access

Implemented password access, protected routes, no-index behavior, shared navigation, and private deployment patterns before connecting the full media archive.

Output / Protected application shell

Stage 03

Build Media Experience

Created responsive galleries, image and video lightboxes, featured media states, filtering, and previous-next navigation across desktop and mobile views.

Output / Responsive media system

Stage 04

Add Story Views

Added reusable introductions, long-form story modals, captions, collection metadata, and new content without changing the original archive architecture.

Output / Reusable story layer

Target System Architecture

Four connected layers turned the portal from a collection of tools into an operating system.

System spine

Target-state sequence

04 connected layers

Good automation and reporting sit on top of a governed data and process model—not the other way around.

Layer 01

Access Layer

Password gating, protected routes, and no-index behavior keep private content out of public discovery while preserving normal authenticated navigation.

Layer 02

Content Layer

Typed collection and entry data separates captions, metadata, featured state, story content, and media paths from reusable interface components.

Layer 03

Media Layer

Responsive images, videos, galleries, filters, and lightboxes provide consistent browsing behavior across desktop, tablet, and mobile screen sizes reliably.

Layer 04

Story Layer

Reusable introductions and long-form story modals preserve context without coupling narrative content directly to the media presentation components.

Qualitative Outcomes

The engagement focused on structural improvement, so the strongest results are clearer operations—not invented vanity percentages.

Organization

Media lived across disconnected sources

Structured archive model created

Context

Media lacked reusable narrative structure

Story views preserved context

Privacy

Private content needed controlled access

Protected routes and noindex

Growth

New content risked structural drift

Typed model scaled cleanly

What Was Delivered

A reusable case study should make the work tangible without exposing confidential client data.

Deliverable 01

Password-protected application shell

Deliverable 02

Typed archive content model

Deliverable 03

Responsive media galleries

Deliverable 04

Image and video lightboxes

Deliverable 05

Reusable long-form story views

Deliverable 06

Private deployment and noindex layer

System note / final

Architecture before automation.

The project reinforced that personal software benefits from the same architecture discipline as client work. Once access, content, media, and story layers were separated, adding material stopped meaning rebuilding the interface. The private subject matter stayed private; the reusable product thinking became the part worth showing publicly.

Private media, identities, messages, and access credentials are intentionally excluded from the public case study.