Metadata-Version: 2.3
Name: blarify
Version: 1.0.2
Summary: A simple graph builder based on LSP calls
License: MIT
Author: Juan Vargas
Author-email: juan@blar.io
Requires-Python: >=3.10,<=3.14
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: asyncio (>=3.4.3,<4.0.0)
Requires-Dist: falkordb (>=1.0.10,<2.0.0)
Requires-Dist: neo4j (>=5.25.0,<6.0.0)
Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
Requires-Dist: requests (>=2.32.3,<3.0.0)
Requires-Dist: tree-sitter (>=0.23.2,<0.24.0)
Requires-Dist: tree-sitter-c-sharp (>=0.23.1,<0.24.0)
Requires-Dist: tree-sitter-go (>=0.23.4,<0.24.0)
Requires-Dist: tree-sitter-javascript (>=0.23.0,<0.24.0)
Requires-Dist: tree-sitter-python (>=0.23.2,<0.24.0)
Requires-Dist: tree-sitter-ruby (>=0.23.0,<0.24.0)
Requires-Dist: tree-sitter-typescript (>=0.23.2,<0.24.0)
Requires-Dist: websockets (>=13.1,<14.0)
Project-URL: Homepage, https://blar.io
Project-URL: Repository, https://github.com/blarApp/blarify
Description-Content-Type: text/markdown

This repo introduces a method to represent a local code repository as a graph structure. The objective is to allow an LLM to traverse this graph to understand the code logic and flow. Providing the LLM with the power to debug, refactor, and optimize queries.

# Supported Languages

- Python
- JavaScript
- TypeScript
- Ruby
- Go
- C#

# Example
<img src="https://raw.githubusercontent.com/blarApp/blarify/refs/heads/main/docs/visualisation.png"></img>
This graph was generated from the code in this repository.

# Quickstart
Get started with blarify by following our quickstart guide:

[➡️ Quickstart Guide](https://github.com/blarApp/blarify/blob/main/docs/quickstart.md)

# Article

Read our article on Medium to learn more about the motivation behind this project:

[➡️ How we built a tool to turn any codebase into a graph of its relationships](https://medium.com/@v4rgas/how-we-built-a-tool-to-turn-any-code-base-into-a-graph-of-its-relationships-23c7bd130f13)

# Future Work
- [x] Gracefully update the graph when new files are added, deleted, or modified
- [x] Add more language servers
- [ ] Experiment with parallelizing the language server requests

# Need help?
If you need help, want to report a bug, or have a feature request, please open an issue on this repository.

You can also reach out to us at [Discord](https://discord.gg/s8pqnPt5AP)
