// This site. A portfolio structured as a traversable AST.
Not a portfolio in the conventional sense. A traversal — a walk through a graph of ideas, projects, and identities. Nodes are concepts. Edges are relationships. The visitor is the runtime.
The metaphor is load-bearing rather than decorative. Three layers carry it: Brahman, the undifferentiated source, which is the raw creative and intellectual substrate; Maya, the projected world of skills, tools, and output, which is what others see; and Atman, the self navigating between them. The landing page is Brahman, the tree is Maya, and a node detail page is Atman.
The same content renders at three depths because that is what a compiler does with a source file. Lex mode shows the portfolio as a stream of tokens, labels and types only. Parse mode shows structure, a tree you click through branch by branch. Eval mode shows the rendered output a reader actually sees. Switching modes is switching how much of the program you are willing to look at.
Built with Next.js and TypeScript. D3 does the layout math and React renders every SVG element — no D3 mutation of the DOM. Content lives in MDX and is merged over inline fallbacks at request time, so prose and structure evolve independently.
The publication rule is part of the design: a project appears here only when it has a public artifact behind it. An unlinkable project card invites a click that goes nowhere, and reads weaker than not being there at all.