I Wanted to Build My Son a Digital Home
How a personal idea became a privacy-first engineering project with a zero-dollar incremental budget.
In brief
- The challenge
- I wanted to preserve the stories behind my son's childhood in a private digital home, with no incremental infrastructure budget and no shortcuts on privacy or engineering discipline.
- The result
- House of Us now has a deployed public foundation, a protected family scaffold, documented architecture, automated checks, and a repeatable release path.
- The limit
- Real family memories are being added gradually, while the private identity and media paths still have production gates to clear before wider family use.

Why I wanted to build it
Like most parents, I already have photographs and videos of my son. They capture birthdays, trips, ordinary afternoons, unfinished sentences, laughter, and many small moments that will become more important as time passes.
The files preserve what happened, but they do not always preserve the story around it. A photograph does not explain what Aariv was interested in at that age, what he said in his own voice, what we noticed as parents, or why an ordinary moment stayed with us.
I wanted to create something Aariv could receive later and use to understand how we experienced his childhood. That idea became Aariv's House of Us, a private, chronological, authored memory book that can grow with him.
House of Us is a curated family space. It is deliberately:
- Not a public child profile.
- Not a social feed.
- Not a complete photo backup.
- Not another gallery.
A small public Front Porch can explain the idea using separately approved material. The Family Book holds the private experience, while a more restricted Vault is reserved for material that needs the strongest access boundary.
Visual summary
House of Us has three privacy thresholds
Each move inward narrows the audience and raises the access requirement.
Public
Front Porch
The idea and separately approved material only.
Private
Family Book
The chronological family experience and approved memories.
Strongest boundary
Vault
Material that requires more restrictive access.
Why it matters: parent approval governs the content and every move inward.
The goal is simple: preserve the memories and their context without turning Aariv's childhood into public content.
We started with discovery and a BRD
My first request was still an idea, not a specification. I asked ChatGPT to interview me before we started designing or writing code.
What should Aariv receive one day? Who should be able to see it now? Should it feel like a gallery, a timeline, or a book? Who decides whether a memory is appropriate? How should his voice be used? What happens when a story later feels too private, incomplete, or wrong?
Those conversations produced an initial business requirements document. I then researched long-term storage, identity, authorization, private media delivery, accessibility, account recovery, provider durability, and the practical limits of free service tiers. Another round of brainstorming clarified the non-goals and unresolved decisions and produced a more complete BRD.
Several important boundaries came from that process. Aariv's voice can appear only through authentic recordings. It will not be cloned to say something he did not actually say. Parent reflections can add context, but the observed memory and our later interpretation should remain distinguishable. Anything sensitive or ambiguous still returns to a parent for a decision.
The BRD gave us a product we could reason about instead of a collection of screens.
I asked for a real engineering process
Once the requirements were coherent, I asked Codex to help execute the work with the discipline I would expect from a real engineering product.
Visual summary
The same requirement carried through the lifecycle
The project connected the original intent to a specification, an architecture decision, a test, and a release check.
01
Discovery
Interview the idea before designing it.
02
BRD
Turn intent and boundaries into explicit requirements.
03
Design
Record architecture and access decisions.
04
Verification
Test security, accessibility, and failure paths.
05
Release
Use repeatable checks and keep gated work explicit.
Why it matters: AI accelerated the work, while I retained authority over intent, privacy, trade-offs, approvals, and real family content.
With Codex, I wrote architecture and design documents, recorded important decisions, separated authentication from authorization, designed the private media path, and defined how the system should behave when identity, policy, or an external provider failed. The implementation used redacted fixtures instead of putting real family memories in the source repository.
I also set the incremental pilot budget at zero dollars. Hosting, storage, authentication, deployment, and operational choices had to fit within free tiers or services I already had. That constraint could not reduce the privacy, security, accessibility, recovery, or long-term ownership requirements.
The implementation went through automated tests, code-quality checks, dependency and secret scanning, accessibility checks, browser testing, continuous integration and delivery (CI/CD), production smoke tests, and release verification.
| Category | Work completed | Evidence in the working record |
|---|---|---|
| Requirements and design | BRD, architecture and design documents, and decision records | Nine architecture decision records |
| Privacy and security | Authentication and authorization separation, private media path, and redacted fixtures | Dependency and secret scanning |
| Quality | Contract, browser, accessibility, and user-experience checks | 41 contract tests and eight browser and user-experience checks |
| Delivery | CI/CD, production smoke tests, and release verification | 12 repository commits and a repeatable release path |
These were the counts in my working record at publication; they will change as the project continues. I am also preparing a short product demo that will show what is working, which paths remain deliberately closed, and what has not yet been proven.
Along with the website, the project produced the requirements, design reasoning, access model, test evidence, release process, and documentation needed to explain how the website works and where its limits are.
The first visual version exposed a missing requirement
Once the first visual version of the website was working, I realized that something was missing. We are from India, but I could not see that part of us anywhere in the design. For a website called House of Us, that did not feel right.
This requirement was not in the original BRD because I recognized it only after seeing the visual design in use. Requirements often change this way in real projects. With Codex, I updated the design to include Indian cultural elements, retested the site, and had the new version running in less than two hours.
The change did not require us to discard the engineering work that was already complete. The access boundaries, content model, tests, and deployment path remained intact while the visual design changed. The project absorbed a late requirement without losing its structure.
Visual summary
A late requirement changed the design without destabilizing the product
The first version met the written requirements but did not visibly reflect our Indian identity.
First visual version
Core structure worked
The access model and product boundaries were already in place.
Gap
India was missing
The design did not yet look like the family whose house it was.
Change
Visual redesign
Indian cultural elements were added while core boundaries stayed intact.
Evidence
Running again in under two hours
The redesign, retesting, and deployment fit within the same two-hour window.
Why it matters: the product structure made it possible to absorb a requirement discovered through use.

What AI accelerated and what remained my responsibility
I used AI across discovery, requirements, research, design, implementation, security review, testing, CI/CD, documentation, and preparation for the product demo.
The main advantage was continuity across those activities. A requirement discussed during discovery could become an architecture decision, a negative authorization test, a release check, and a point to explain in the demo without rebuilding the context each time.
I remained responsible for the intent, trade-offs, approvals, privacy decisions, production accounts, and the selection of real family content. ChatGPT could draft a BRD, but I had to decide whether it described the product I wanted. Codex could implement authorization logic, but it could not decide who should have access to my son's memories. It could prepare a media workflow, but it could not authorize real child data to enter it.
The work moved quickly because AI reduced the time spent moving between product, design, engineering, security, quality, and operations. The decisions that required parental judgment remained mine.
What exists now
The public foundation is deployed. The public porch, privacy explanation, family entrance, protected memory-book scaffold, themed age-year experiences, automated checks, CI/CD workflow, and operational documentation have been built using redacted content.
The private family experience is not yet broadly released. Production identity and authorization still need to be proven with the retained accounts and family allowlist. Private media delivery and recovery have final gates to clear. A small, parent-selected set of memories is being prepared and reviewed rather than imported in bulk.
Visual summary
What exists now—and what remains gated
The public foundation works with redacted content, while private identity and media paths remain gated.
Built with redacted content
Working foundation
Public explanation, family entrance, protected structure, automated checks, and release documentation.
Production proof required
Private paths
Identity, authorization, private media delivery, and recovery still have final gates.
Current preparation
Selected memories only
A small parent-selected set is being prepared and reviewed before any broader import.
Why it matters: the public foundation is working; private family data does not move past its production gates.
I want the project to be as clear about incomplete work as it is about completed work. A configured provider is not the same as production proof, and a working scaffold is not permission to add private family data.
A personal thank-you
I also want to thank Patty Clark for arranging temporary ChatGPT Pro access, and Ryan Oaks-Rooney and the OpenAI Developers team for supporting the opportunity. I was already using Codex through my ChatGPT Business subscription, but heavier experiments sometimes exhausted my weekly capacity and stopped the work in the middle. The temporary Pro access allowed me to work through the complete lifecycle without rationing each iteration, which made Project Aariv much easier to pursue.
What comes next
This first Build Note provides the overview. Future notes will cover discovery and the BRD, the zero-dollar architecture, authorization and security, testing and CI/CD, the cultural redesign, and the product-demo workflow. I will include anonymized artifacts where they help explain the decisions without exposing Aariv's private information.
House of Us now has a working foundation, and the family archive will grow with Aariv.