← All work

Blockchain · Forensics

AlgoMap

A blockchain investigation platform for tracing money flows, mapping wallet relationships, and investigating suspicious activity on Algorand.

Role
Builder
Type
Independent product
Status
Live
Stack
NestJS · Vue · PostgreSQL · Algorand

1 · The problem

Block explorers show data; investigators need answers. Tracing funds across hops, spotting counterparty clusters, and separating noise from suspicious flow is slow, manual work on Algorand.

2 · My responsibility

Product direction, backend API design, graph traversal logic, data normalization from on-chain sources, and the deployed web experience (NestJS + Prisma, Vue + cytoscape).

3 · The architecture

Indexer ingestion normalizes transactions into Postgres; a NestJS API serves trace queries and risk views; a Vue/cytoscape frontend renders wallet graphs. Supabase Postgres backs both app data and cached chain state.

4 · Key engineering decisions

Graph-first modeling over flat transaction lists; cached multi-hop traversal with depth limits to keep queries fast; risk scoring kept explainable (heuristics + labels) rather than a black-box ML claim.

5 · The hardest problem

Multi-hop tracing explodes combinatorially. Solved with bounded breadth-first traversal, per-hop caps, and caching intermediate subgraphs — fast enough for interactive investigation without losing the important paths.

6 · What I would improve

Add streaming ingestion for near-real-time tracing and a public read-only API so external agents and researchers can query traces programmatically.