Website Development & Historical Preservation

Family Archive

The story of a family archive growing through website development, historical research, and preservation.

January 2024 — Present

80+publicly indexed pages
40+family biography pages
10+cloud-powered tools
30 monthsof continuous evolution

About This Archive

One family archive, built in stages.

The Family Heritage Project is a long-term website that I designed and built from scratch to preserve my family’s history, photographs, biographies, and relationships across generations.

Rather than being developed all at once, the website has grown through continuous planning, experimentation, redesign, automation, and new feature development. What began as a personal website gradually became a living family archive with public stories, private member tools, connected galleries, and ways to keep family information organized.

This page documents that journey. It serves as both a public changelog and a software development portfolio, showing not only what I built, but also the problems I solved and the thoughtful decisions that helped the website continue growing over time.

The second stage, which I call the Genesis Project, expands that work by gathering, researching, and digitizing the historical materials that allow the archive to reach further into earlier generations.

The Project Stages

First build the archive. Then deepen its history.

The work began with the digital foundation and will continue by recovering and preserving more of the history behind it.

Stage 01 · Digital Foundation

Building the Website

The first stage created the digital home for the archive through biography pages, the family tree, searchable galleries, relationship records, videos, private member tools, and administration features.

Active development since January 2024

Stage 02 · Historical Collection

Expanding the Family Record

The second stage will gather and digitize photographs, VHS films, certificates, and ancestral information so earlier generations can be researched, documented, and added to the family tree.

In 2027, I plan to travel to Peru to research my grandmother’s home library, where many of these family records are preserved. The materials will be cataloged, scanned, and connected to the correct relatives wherever possible.

Planned milestone: Peru archive visit in 2027

How the Website Works

A public family website supported by useful tools behind the scenes.

The visible website stays simple and fast. Firebase and connected Google services handle the parts that need sign-in, saved information, photo organization, approvals, and automation.

01

Public Website

Responsive pages, shared navigation, breadcrumbs, search, carousels, galleries, and accessible controls create a consistent experience on computers and phones.

02

Family Information

Firebase securely organizes member accounts, family profiles, relationship records, photo tags, requests, and approval status.

03

Connected Services

Google Drive, Google Contacts, YouTube, Blogger, and other services bring photos, videos, contacts, and updates into the project.

04

Management Tools

Private administration pages make it easier to review members, tag media, publish changes, correct information, and maintain the website.

Archive Timeline

How the archive has grown and where it is going.

Jan–Mar2024

🚀 Initial Foundation

Giving the project a purpose and a plan

The domain already existed, but active development began in January 2024 with a much bigger idea: create one lasting place for family history, photographs, relationships, personal updates, and professional work.

Built

A content map covering personal story, family heritage, galleries, updates, professional material, and future private experiences.

Challenge

Balancing intimate family content with a public professional presence while planning for privacy boundaries from the beginning.

Impact

Established the principles that still guide the site: preservation, clarity, respectful access, and incremental growth.

Apr–Dec2024

🎨 Planning & Design

Designing a consistent home for every story

The broad idea became a visual and editorial plan. I worked out how biographies, generations, places, memories, and photographs could feel connected while still allowing every person’s page to have its own voice.

Built

Page standards for biographies, relationship groupings, gallery destinations, navigation categories, and reusable visual hierarchy.

Challenge

Designing for variable biography lengths, incomplete photographs, bilingual material, and changing family information.

Impact

Created an editorial model that later supported dozens of profiles without requiring a different design for every person.

Jan–Nov2025

🧭 Project Structure

Choosing a foundation that could grow

Before publishing the first complete version, I chose a lightweight structure built with HTML, CSS, and JavaScript. This kept the public website fast and easy to understand while leaving room for accounts, databases, and private tools later.

Built

A delivery approach using HTML, CSS, JavaScript, source control, custom-domain hosting, and an extensible directory structure.

Challenge

Avoiding framework complexity while preserving a path toward authentication, databases, APIs, and administration.

Impact

Kept the public site portable and fast while leaving room for the application layer that followed.

December2025

🌐 First Website Launch

Turning a dormant domain into a working website

The first surviving Git history records the homepage, shared styling, About pages, images, and the project’s first visual identity. The domain was no longer an unused address; it had become the beginning of a real family archive.

Built

Core HTML structure, site-wide CSS, typography, brand imagery, page metadata, and the initial content hierarchy.

Challenge

Creating a coherent design language for family storytelling, professional information, and media-heavy pages.

Impact

Established the visual foundation and Git workflow used by every later feature.

January2026

🏠 Homepage & Navigation

Making the growing website easy to explore

January brought the first major expansion. I redesigned the homepage, created shared navigation and breadcrumbs, improved the mobile experience, and added a carousel and useful content blocks so visitors could move naturally through a growing number of pages.

  • Built a responsive shared header with nested navigation and path-aware links across multiple directory depths.
  • Developed the configurable homepage carousel with generated slides, controls, indicators, and seasonal content.
  • Added greeting, date, currency, update, blog, and family-focused homepage blocks.
  • Created the first family tree, family gallery, portrait gallery, and site-wide generated search index.
  • Introduced breadcrumbs, mobile navigation states, keyboard handling, social rail, contact actions, and quality-of-life utilities.

Why it mattered: shared behavior replaced repeated page markup, reducing drift and making global navigation changes possible from one source.

Feb–Mar2026

📝 Family Stories & Updates

Turning the website into a living family record

The website grew beyond its original pages as I added family updates, milestones, photographs, and changing homepage content. Each addition helped the project feel current, personal, and useful rather than like a finished archive that would never change.

Built

Family-update publishing surfaces, expanded Alyssa content, gallery revisions, custom-domain routing, and richer social metadata.

Challenge

Maintaining visual consistency as content volume and media formats grew quickly across desktop and mobile.

Impact

Turned the site into an active memory archive and established an iterative test-and-refine rhythm.

April2026

🔍 Smart Search & Everyday Features

Helping visitors find information and return often

Search and everyday homepage features made the site easier to use. Recent updates, calendar information, live dates, exchange rates, event content, and better content ordering gave visitors useful reasons to return.

  • Added calendar and event-oriented interfaces alongside recent-update content.
  • Connected live date, greeting, and exchange-rate data with resilient failure states.
  • Improved carousel composition, content ordering, responsive spacing, and navigation behavior.
  • Strengthened metadata, cache versioning, and media date correction practices.

Why it mattered: the homepage became a modular dashboard for current family, editorial, and project information.

May2026

👪 Family Directory

Creating a private space for family members

The Family Directory was a major turning point. Approved relatives could sign in, view family information, manage parts of their profiles, and use private features while the public stories remained safely separated.

  • Designed Firestore collections for directory members, profile state, requests, photo tags, and moderation records.
  • Implemented Google sign-in, pending approval, approved-member access, admin roles, sign-out, and guarded interfaces.
  • Built directory cards, profile editing, birthdays, administrative approval, deletion, and member-management workflows.
  • Added Google Contacts synchronization to reduce manual entry and preserve consistent identity records.
  • Introduced Firebase Hosting, clean URLs, redirect governance, Firestore rules, and deployment scripts.

Why it mattered: the project gained secure identity, structured data, and an operational back office without replacing its fast static front end.

May–Jun2026

☁️ Firebase Architecture

Adding secure services behind the website

Firebase and Cloud Functions allowed me to move sensitive work away from the public browser. Sign-in checks, approvals, image processing, protected actions, and automated tasks could now happen securely behind the scenes.

Built

Authenticated image conversion, profile claiming, public tag suggestions, rate limiting, secure lead workflows, email delivery, and protected downloads.

Challenge

Coordinating permissions, tokens, server secrets, CORS, file limits, and third-party APIs without exposing privileged credentials.

Impact

Made higher-risk workflows enforceable, auditable, and reusable across the platform.

June2026

🌳 Family Tree & Relationships

Connecting each person across the entire website

The original family tree grew into a connected relationship system. A person can now appear in the tree, directory, biography pages, and galleries while still being recognized as the same family member across the website.

  • Implemented email-based profile claiming with server-side matching, conflict checks, migrations, and claim-state badges.
  • Added member requests for profile access, biography text updates, photo changes, and administrative review.
  • Normalized person slugs, alternate aliases, relationship labels, person IDs, and gallery tag keys.
  • Connected family-tree cards, biography pages, directory profiles, and media albums through shared identity mappings.

Why it mattered: one person can be recognized reliably across multiple systems without duplicating or exposing private account data.

Late June2026

👤 Biography Pages

Giving every family story a consistent home

Dozens of family and personal profiles were brought into one consistent format with portraits, relationship context, meaningful subtitles, gallery links, clean addresses, and a familiar blank portrait when no photograph is available.

Built

Reusable biography structure, long-form page decisions, image fallbacks, canonical aliases, redirects, and connected albums.

Challenge

Preserving individual voice while correcting inconsistent names, links, image paths, page lengths, and historical relationships.

Impact

Expanded the archive rapidly without sacrificing navigation consistency or maintainability.

Privacy was handled deliberately: selected people pages remain accessible by exact URL but are excluded from navigation and generated site search.

Jun–Jul2026

📺 YouTube Synchronization

Bringing family videos into the gallery

The gallery expanded from photographs to family videos. YouTube synchronization and separate photo and video views made it possible to manage both kinds of memories without making the administration page confusing.

  • Integrated YouTube OAuth and Data API synchronization for channel and playlist videos.
  • Added public/unlisted visibility checks, embedding validation, review states, thumbnails, titles, and video ID replacement.
  • Separated Photos and Videos administration while supporting both YouTube and Google Drive video files.
  • Added upload-date, filename, and gallery-date sorting with newest uploads shown first by default.
  • Improved draft semantics, browser-persistent drafts, bulk publishing, media-specific summaries, and compact single-preview video cards.

Why it mattered: the gallery became media-agnostic while administration stayed understandable at growing scale.

2026Ongoing

🤖 Automation Workflows & AI Integration

Working faster while keeping every decision human

Automation and AI-assisted development helped with code review, repetitive profile work, writing cleanup, link checks, debugging, testing, and planning. I still review personal content and make the final decisions about design, privacy, and publication.

Approach

Use AI to accelerate analysis and repetitive implementation while retaining human judgment over architecture, privacy, tone, and release decisions.

Guardrail

Verify generated changes against source history, browser behavior, data rules, and the intended context of family content.

Impact

Increased development throughput while strengthening documentation and systematic quality checks.

July2026

⚡️ Performance Improvements

Making the website faster and more dependable

Recent work has focused on details visitors may never notice but always benefit from: faster loading, dependable text encoding, protected search results, smaller releases, clearer error messages, and testing across computers and phones.

  • Added asset versioning and targeted cache-control rules for rapidly changing administration tools.
  • Protected search privacy through generated-index exclusions and automated rebuild checks.
  • Removed oversized media from Git history and kept large video assets in purpose-built media services.
  • Improved timeouts, partial-load behavior, loading states, retries, and user-facing error messages.
  • Standardized UTF-8 output, clean URLs, canonical redirects, responsive constraints, and browser verification.

Why it mattered: releases became smaller, safer, easier to diagnose, and less dependent on manual cleanup.

PresentNext

🛠️ Ongoing Development

A project that continues to grow

The project is still active. Future work will continue improving family relationships, member self-service, gallery management, automated checks, performance, and the tools that make this growing archive easier to care for.

Planned2027

📚 Historical Collection

Researching the family archive in Peru

I plan to travel to my grandmother’s home in Peru to work through the records preserved in her library and identify materials that can deepen our understanding of earlier generations.

  • Catalog family photographs, VHS films, certificates, and historical records.
  • Scan and preserve birth certificates, marriage certificates, and other fragile documents.
  • Compare names, dates, and relationships with FamilySearch and other trusted family sources.
  • Connect verified discoveries to the family tree, biography pages, and digital galleries.

Why it matters: records stored in one home can become an organized digital collection that future generations can explore and continue.

More Than a Family Archive

Other experiences that grew from the project.

Blog & Updates

Connected blog posts, family updates, and homepage features keep visitors informed without requiring the same content to be written in several places.

Professional Portfolio

Career pages, a downloadable resume, contact options, and this Family Archive page show the professional work behind the website and its preservation efforts.

Shop Prototype

A separate browsing, product, cart, and contact experience explored how the same website foundation could support a small online shop.

Family Events

Bilingual baptism pages, godparent invitations, seasonal homepage moments, calendar information, and special announcements make family events part of the archive.

Property Project

A separate property experience added inquiry forms, file uploads, private management tools, email notifications, status tracking, and printable materials.

Experiments & Prototypes

Live camera controls, real-time status pages, and archived experiments gave me a place to test new ideas before deciding whether they belonged in the main project.

Lessons From the Work

What building this project has taught me.

See the whole project through

I take responsibility for the idea, design, development, content, launch, problem-solving, and continued maintenance.

Keep the foundation understandable

The public website stays lightweight, while cloud services are added only when they solve a real need such as sign-in or saved information.

Design for everyday use

Drafts, approvals, retries, duplicate checks, and cleanup tools matter just as much as the feature visitors see.

Respect personal stories

Private areas, search exclusions, secure sign-in, exact-link access, and human review help protect sensitive family information.

Make future changes easier

Shared page elements, consistent names, connected records, and reusable tools make the next improvement easier to build.

Keep improving

Small design refinements, bug fixes, performance updates, and workflow improvements steadily make the website more dependable.

Behind the Scenes

Tools used to build it

HTML5 · CSS3 · Vanilla JavaScript · Firebase Hosting · Firebase Authentication · Cloud Firestore · Realtime Database · Cloud Functions for Node.js · Firebase Storage · Google Drive API · Google Contacts API · YouTube Data API · Blogger feeds · Git · GitHub · PowerShell automation · responsive and accessibility testing

The Story Continues

The archive grows through every stage.

Each stage connects technology, research, documents, photographs, films, and family memories so the archive can continue growing for future generations.