KAP

Search the portfolio.

Quick links

CASE STUDY 04 / COMMUNITY & GENEALOGY

Connected by family.
Bounded by privacy.

A private community and genealogy project combining family trees, stories, social posts, messaging, and one-to-one calls. It explores how belonging to a community differs from permission to view a particular record.

VISIT THE PROJECT

Hosted development preview. Family records require sign-in. Opens in a new tab.

PROJECTHatlangh Beh
STATUSHosted preview
TECHNOLOGIESNext.js · Prisma · Socket.IO · WebRTC
THE PRODUCT

Hatlangh Beh, in context.

Visit the preview
The public Hatlangh Beh preview website, introducing its family network and heritage platform.
Hatlangh Beh public development preview. Captured November 6, 2026.
Watch the 18-second visual overview

01 / SYSTEM VIEW

Where the boundaries sit.

A simplified view to support a technical conversation.

USER EXPERIENCE

Community experience

Profiles, posts, and family stories

Family records

Trees and reviewed corrections

TRUST BOUNDARY

Server audience rules

Viewer context · field visibility · record restrictions

Genealogy records

Audience-filtered data queries

Conversations

Socket.IO messaging / WebRTC calls

Conceptual view of the project. Field visibility and messaging permissions are distinct review areas; one does not establish the other’s security.

02 / ENGINEERING DECISIONS

The reasoning matters.

Implementation choices paired with the tradeoffs they introduce.

01

Evaluate the field’s audience

The selected tests distinguish community membership, family branch, friendship, and self-only fields.

REVIEW CONSIDERATION

A broad profile permission should not automatically expose every field within that profile.

02

Constrain records at query time

The privacy test checks the database filter as well as the visibility helper.

REVIEW CONSIDERATION

Filtering only after fetching a record increases the number of places where private fields could accidentally escape.

03

Treat minors’ records carefully

The selected family-branch example denies viewers from another branch or without branch context.

REVIEW CONSIDERATION

This is a specific tested rule, not a claim that all child privacy or consent requirements have been satisfied.

03 / REVIEW SCENARIOS

Look at the unexpected path.

Illustrative explanations of selected test definitions. These controls do not call the application or execute its tests.

SCENARIO 01

Self-only field

A viewer is a friend and in the same family branch, but is not the subject of a self-only field.

EXPECTED IN THE SELECTED TEST

Field hidden

The selected test expects self-only visibility to remain restricted despite the other relationships.

NEXT REVIEW QUESTION

Check serializers, exports, and notifications for the same field-level rule.

SCENARIO 02

Different branch

A viewer from another family branch requests a branch-restricted minor’s record.

EXPECTED IN THE SELECTED TEST

Record restricted

The selected privacy test denies the other branch and a viewer with no branch information.

NEXT REVIEW QUESTION

Validate the viewer context on the server rather than accepting a branch ID from the client.

SCENARIO 03

Database filtering

A viewer has no linked person or family branch context.

EXPECTED IN THE SELECTED TEST

Membership scope only

The selected filter test includes only community-member-visible records in that context.

NEXT REVIEW QUESTION

Also verify that unauthenticated requests never acquire membership context by default.

04 / TRACEABLE EVIDENCE

From a claim to a test.

Selected source reviewed on November 6, 2026.

Source reviewed · tests not rerun
SELECTED TEST FILEsrc/features/privacy/visibility.test.ts
Snapshot177ebe623a45
  • Audience rules for member, branch, friend, and self-only fields
  • Family-branch restrictions on the selected minor record
  • Database filter conditions that match viewer context

These statements summarize the test definitions at this repository snapshot. They do not report a passing run, complete coverage, or an independent security audit. Application source stays private.

WHAT I WOULD EXAMINE NEXT

Continue the review.

A fuller production review would trace privacy rules through search, exports, media, notifications, and real-time messages, then validate deployment-specific calling and storage configuration.

CONTINUE EXPLORING

KapCore

Tenant isolation & authorization

Discuss this project