HookLens: Visual Analytics for Understanding React Hooks Structures
This addresses the problem of code complexity and maintainability for React developers, representing an incremental improvement in tooling for a specific domain.
The paper tackles the challenge of maintaining and refactoring React web applications by introducing HookLens, an interactive visual analytics system that helps developers understand Hooks structures and dependencies, resulting in significantly improved accuracy in detecting anti-patterns compared to conventional code editors and surpassing LLM-based coding assistants.
Maintaining and refactoring React web applications is challenging, as React code often becomes complex due to its core API called Hooks. For example, Hooks often lead developers to create complex dependencies among components, making code behavior unpredictable and reducing maintainability, i.e., anti-patterns. To address this challenge, we present HookLens, an interactive visual analytics system that helps developers understand howHooks define dependencies and data flows between components. Informed by an iterative design process with experienced React developers, HookLens supports users to efficiently understand the structure and dependencies between components and to identify anti-patterns. A quantitative user study with 12 React developers demonstrates that HookLens significantly improves participants' accuracy in detecting anti-patterns compared to conventional code editors. Moreover, a comparative study with state-of-the-art LLM-based coding assistants confirms that these improvements even surpass the capabilities of such coding assistants on the same task.