PitchHut logo
Revolutionizing code comprehension with intelligent graph navigation.
Pitch

Arbor transforms how AI coding assistants interact with codebases. By constructing a living graph of functions, classes, and dependencies, Arbor provides precise insights and reduces errors from traditional methods. Stop treating code like a text bag and start leveraging intelligent navigation for clearer understanding and integration..

Description

Arbor is a powerful, Graph-Native Intelligence Layer for Code designed to revolutionize the way developers interact with their codebases. By employing advanced techniques to parse code into an Abstract Syntax Tree (AST) using Tree-sitter, Arbor creates a dynamic graph architecture where every class, function, and variable is represented as a distinct node, while every import, function call, and connection forms the edges. This innovative approach allows Arbor to dig deeper than traditional AI coding assistants, which execute simple keyword searches and often yield inaccurate results.

Key Features

  • AST-Graph Intelligence: Arbor transforms every code entity into a queryable node, preserving critical semantics such as scope, shadowing, and namespace isolation. This ensures that users receive precise context rather than generic keyword matches.

  • Sub-100ms Incremental Sync: Arbor efficiently observes filesystem changes and re-parses only the modified AST nodes, resulting in rapid updates. For instance, in a project with 100,000 lines of code, saving a file triggers a mere ~15ms update, delivering a seamless experience.

  • Blast Radius Analysis: Users can identify every element affected by changing a function, which helps to analyze potential impacts before deploying updates to production.

  • Semantic Ranking: Arbor prioritizes code snippets based on their importance and contextual relevance within the application, ensuring that critical information is presented first.

  • Logic Forest Visualizer: An optional desktop application renders the codebase as an interactive graph, enhancing usability with features like auto-tracking for AI interactions and real-time syncing that updates the visualizer with code changes.
    Logic Forest Visualizer

  • Health Check: A single command verifies the environment’s setup, ensuring optimal performance and functionality.

Architecture Overview

The architecture of Arbor is comprised of several interconnected components:

  • Context Sidecar: Integrates protocol handling, ranking mechanisms, and discovery engines.
  • Arbor Graph: Comprises nodes, edges, and semantic relationships, accurately representing the entire code structure.
  • Pulse Indexer: Handles AST parsing and file watching while providing delta synchronization to keep the index up to date efficiently.

Supported Languages

Arbor currently supports:

  • TypeScript
  • JavaScript
  • Rust
  • Python
    With ongoing development for additional languages like Go and Java.

Performance Metrics

Arbor emphasizes speed, aiming for quick operations across various metrics:

  • Initial indexing (10,000 files): Targeted at < 5s with actual results around 2.3s.
  • Incremental updates: Mapped at < 100ms with realistic performance at ~15ms.
  • Query responses: Designed to respond in < 50ms, typically achieving ~8ms.
  • Memory usage (100k LOC): Target set at < 200MB, with actual measurements around ~120MB.

Contributions

The project welcomes contributors of all levels, whether through small fixes or major feature integrations.
For more detailed guidance, refer to the CONTRIBUTING.md file.

Future Roadmap

The roadmap includes additional features like language server protocol support and expanded parser capabilities for Go, Java, C/C++, and Dart/Flutter.

For developers looking to elevate their code navigation, analysis, and refactoring with efficient and intelligent tooling, Arbor provides a comprehensive and forward-thinking solution that enhances productivity without compromising accuracy.

0 comments

No comments yet.

Sign in to be the first to comment.