Back to PinboardPinboard archive / Engineering case study

Investigation file / BUILDSENSE

BuildSense

PC hardware discovery and compatibility for the Egyptian market.

Project type
Solo product / full-stack system
Working context
Individual project
My role
I designed the product and built its Angular interfaces, Express API, ingestion worker, compatibility rules, and shared Nx packages.
  • Angular 19
  • TypeScript
  • Node.js
  • Express
  • MongoDB
  • Nx
BuildSense catalog home page
Exhibit A / unified product discovery
01

Pinboard archive / Engineering case study

Context

A solo original product that turns fragmented local retailer data into one decision-support catalog.

Working context
Individual project
My role
I designed the product and built its Angular interfaces, Express API, ingestion worker, compatibility rules, and shared Nx packages.
Who was affected
People comparing PC components and planning a build across local retailers.
02

Problem brief

Problem

Egyptian PC shoppers had to reconcile fragmented retailer catalogs, duplicate product listings, uneven specifications, and uncertain part compatibility on their own.

Operating constraints

  1. 01Retailer data differs in naming, structure, completeness, and availability.
  2. 02Compatibility cannot be claimed when the required source facts are missing.
  3. 03Some protected pages require approved browser captures rather than direct HTTP collection.
03

Evidence / reasoning

Problem Research

01

Identity before aggregation

I compared retailer naming and specification patterns to determine which facts could prove that two offers represented the same component.

02

Uncertainty is a product state

I traced compatibility rules back to their required sockets, dimensions, wattage, and interfaces, then treated every missing prerequisite as an explicit unknown.

03

Separate request work from ingestion

I separated interactive catalog requests from long-running store ingestion after mapping their different timeout, retry, and recovery needs.

04

Implementation files

How I Solved It

F-01

Persistent PC builder

I built eight persistent component slots that retain a public build and its compatibility state.

F-02

Multi-store catalog

I combined verified specifications and known retailer offers on one product page.

F-03

Purchase plan

I turned a completed build into a store-by-store purchase checklist.

05

System map

System Architecture

An Nx monorepo separates the Angular public/admin UI, Express API, ingestion worker, MongoDB, and shared domain packages.
01

Retailers

Pages and approved captures

02

Worker

Discover, snapshot, parse, match

03

MongoDB

Catalog, offers, builds, jobs

04

Express API

Catalog, builds, admin

05

Angular UI

Public and admin experiences

06

Diagnostic notes

Challenges

Issue 01

Cross-store product identity

Similar names do not prove that two retailer listings represent the same component.

Issue 02

Protected retailer pages

Not every source supports reliable direct HTTP discovery.

07

Quality gates

Technical Safeguards

Security

I protected the administration surface with Helmet, CORS, scrypt, opaque sessions, CSRF, and origin validation.

Reliability

I made failures inspectable with immutable snapshots, idempotent publishing, resumable runs, request IDs, and readiness/liveness endpoints.

Validation

I configured Vitest, MongoDB Memory Server, Playwright, axe-core, CI, and strict TypeScript across the workspace.

08

Ownership record

My Contribution

MY VERIFIED SCOPE

I designed and built the product, its Angular interfaces, Express API, ingestion worker, compatibility rules, and shared Nx packages.

Working context
Individual project
My role
I designed the product and built its Angular interfaces, Express API, ingestion worker, compatibility rules, and shared Nx packages.
09

Closing record

Outcome

What was delivered

I implemented a public decision-support catalog, eight-slot builder, compatibility engine, purchase plan, admin console, and multi-store ingestion pipeline.

Published evidence

I publish the source, live catalog, architecture documentation, automated tests, CI, and operational tooling.

Honest boundary

I keep compatibility evidence-gated: missing source facts appear as unknown rather than a guessed result.

Next consideration

My next step is to expand reliable source coverage while keeping every compatibility result gated by verified facts.

10

Curated project media

Related Evidence

BuildSense catalog home page
Evidence exhibit 01Exhibit A / unified product discovery
BuildSense PC builder workspace
Evidence exhibit 02Exhibit B / persistent eight-slot builder
BuildSense compatibility quality review
Evidence exhibit 03Exhibit C / evidence coverage and rule readiness
BuildSense purchase plan
Evidence exhibit 04Exhibit D / store-by-store execution plan
BuildSense product details and offers
Evidence exhibit 05Exhibit E / normalized product evidence
BuildSense component comparison
Evidence exhibit 06Exhibit F / side-by-side component analysis