Case study

Viraasat

A private family archive inspired by conversations with my grandparents, built to preserve the stories behind a family tree.

Organization
Independent project
Private family archive
Role
Product design, full-stack implementation, and validation
Timeframe
2026
Fictional Rao family timeline and Nikhil Rao's story in the Viraasat app
A fictional family in the working interface, captured with local sample data.

Why I started

The conversations that led to Viraasat

In 2024, I sat down with my grandparents and asked them to tell me about their lives. We talked about their childhoods, their friends and hobbies, what they remembered of their own parents and grandparents, how they met, the work they did, what they had hoped for, and the things that had gone right and wrong along the way. I had known them all my life, but I came away feeling as though I had met another side of them. There was so much in those conversations that no family tree could have shown me.

I also realized how much of our family history lives only in their memories. In my family, as in many South Asian families, stories have been passed down by speaking to one another. We have few written records that reach beyond my grandparents’ generation, and they are among the last people who can tell me about relatives I never met. If I do not make time to listen and record those stories now, parts of that history may disappear with them.

Viraasat grew out of that worry and that sense of discovery. I want my grandparents' and parents' generations to have a place to tell these stories now, and mine and the generations after us to keep building on them. It could help us remember people we have lost as more than names and dates, and know the people still here more deeply. We should be able to hear what our relatives cared about, where they lived, how they changed, and what was happening around them. I think a record like that becomes richer when the whole family can add to it.

Product walkthrough

More than a chart of names

Today, a family can create a private circle, add relatives and their relationships, and move between a lineage graph, a timeline, and each person's profile. That profile is where the details from a conversation can live: a story, a photograph, a place, or a note someone else in the family can add to. Invitations let relatives participate without making the archive public.

  1. 01Sign in

    An approved tester signs in with Google to reach their own account.

  2. 02Choose a circle

    They can start a family circle or join one after an invitation.

  3. 03Explore lineage

    They can choose a person and follow the relationships around them.

  4. 04Preserve context

    A profile can hold memories, life details, and private images.

  5. 05Invite carefully

    Relatives can be invited to read or contribute, with different roles.

The Rao family shown in this walkthrough is fictional. The hosted app currently admits approved Google test accounts; anyone can read this page without signing in.

Stories and media

Give each person room to be remembered

When someone opens a relative's profile, they can read and add more than biographical facts. There is room for an oral-history story, photographs, revisions, and discussion, so a cousin who remembers a different detail can contribute rather than keeping it in a separate chat or album. Uploaded images are stored privately and the app checks circle access before opening them.

The app also has places and migration, context events, timeline, and audit panels. I am still working on how those pieces should connect: a move to a new city or a world event matters most when it helps someone understand the choices a person made at that point in their life.

Nikhil Rao’s private media panel listing a fictional portrait image
Private media attached to the selected fictional person.

Trust model

Keep the family in control

These stories can be intimate, which is why I did not want every signed-in person to browse every family. An account lets someone enter the app, but each circle decides who belongs there and what they can do. Before the API reads or changes a record, it checks that person's membership and role in the circle.

Owner

Manages the circle and invitations.

Editor

Can contribute to the family archive.

Viewer

Can read shared content, but cannot edit; medical notes are hidden.

What works today

Testing it with two accounts

I have been using the hosted version with two accounts to test whether the basics hold up beyond a local prototype. I edited a person's story, left the profile, and found the change still there when I came back and when I opened the app on my phone. I uploaded an image and reopened it from the family's private storage.

The second account saw no family circle until it accepted an invitation. It could then see the shared stories and image, but its viewer role could not edit them or read medical notes. That is the behavior I want to keep testing with people outside my own setup.

Still in progress

What I want to build next

Viraasat is still being built. The current app can hold people, relationships, stories, images, and contributions from invited family members. I want to go further than collecting entries. I am working toward a more natural way to capture oral histories, and a timeline that places someone's life beside the events they lived through. I also want maps to show how a family moved across cities and countries, so later generations can see a journey rather than a list of places.

The current app keeps medical notes hidden from viewers. Longer term, I want to explore an opt-in family health history. Patterns involving conditions such as diabetes or mental and behavioural health can be hard to piece together when the information is scattered or never written down. This connects with my interest in health technology and bringing fragmented medical records into one clearer picture. It is an idea I want to handle with care and consent, not a diagnostic feature of the current app.

For now, this is a small tester deployment on Render and Supabase free tiers. The hosted service may take a moment to wake up, and Google sign-in is restricted to approved test accounts while I keep building.

Want to try the live app?

Request tester access first. Approval is required before Google sign-in will work, and an invitation is required to enter an existing family circle. The walkthrough above is available to everyone.