Skip to content

Projects

Things I've built — from research tools to startup prototypes.

computational-chemistryin-progress

ChemPath

ChemPath is an independent computational chemistry project exploring whether organic synthesis pathways can be represented as directed weighted graphs and navigated using graph-theoretic algorithms. The current prototype implements a C++ reaction graph engine and Dijkstra's shortest-path algorithm, with future work planned around chemically informed heuristics, alternative pathfinding methods, and integration with MechLang for visualization.

C++Graph AlgorithmsDijkstra's Algorithm
human-computer-interactionin-progress

FocusVector

FocusVector is an experimental browser-based behavioral telemetry system for estimating possible continuity loss during digital reading sessions. It collects lightweight interaction signals such as scrolling behavior, rereading, pauses, reading progression, and tab switching, extracts behavioral features, and applies local heuristics to classify reading states such as focused, fragmented, possible drift, and drift recovery. The project is designed around measurable behavioral signals rather than diagnostic or psychological claims, with an emphasis on privacy and non-intrusive interventions.

JavaScriptChrome ExtensionManifest V3Behavioral Analysis
developer-toolscompleted

Motion Explainer

Motion Explainer is a reusable skill for turning concepts into animated visual narratives. It structures an explanation around a clear conceptual arc, then builds it as a sequence of scenes using a fixed viewer template. The skill supports p5.js animation, KaTeX-rendered mathematics, interactive prediction pauses, misconception scenes, parameter controls, responsive 2D or WEBGL rendering, and reusable animation and drawing primitives. The implementation lives specifically in the motion-explainer directory of my fork of Anthropic's Skills repository. The other skills in that fork are upstream Anthropic work and are not part of this project.

p5.jsJavaScriptHTMLKaTeXCSS
language-designin-progress

MechLang

MechLang is a domain-specific language designed to represent organic chemistry reaction mechanisms as structured, executable code — replacing static diagrams with a notation that both humans and computers can understand.

TypeScriptDSLParserSVG