Knowledge Graph for multi-language repository dependency analysis — Java, TypeScript, Python, Groovy, SQL/Oracle
Project description
Graph Project - Dependency Analysis System
📍 Project Location
Path: C:\DevWorkspace\Graph Project\
🎯 Purpose
Sistema de análise de dependências de código com Clean Architecture para repositórios Java.
Este é um novo projeto independente que implementa:
- 🔍 Análise AST com Tree-sitter para extração de estruturas de código
- 🔗 Detecção de dependências internas (código-para-código) e externas (APIs, DBs, bibliotecas)
- 📊 Armazenamento de grafo de dependências no Neo4j para análise de impacto
- 🧠 Geração de embeddings (OpenAI) e armazenamento no Qdrant para busca semântica
- 🚀 Processamento paralelo de múltiplos repositórios
🏗️ Architecture
Clean Architecture com 4 camadas:
src/
├── domain/ # 💎 Entities, Value Objects, Interfaces
│ ├── entities/
│ ├── value_objects/
│ ├── repositories/
│ └── services/
├── application/ # ⚙️ Use Cases, DTOs, Services
│ ├── use_cases/
│ ├── dtos/
│ └── services/
├── infrastructure/ # 🔧 Adaptadores (Qdrant, Neo4j, OpenAI, Tree-sitter)
│ ├── parsing/
│ ├── persistence/
│ └── external_apis/
└── presentation/ # 🌐 Controllers, Routers FastAPI
└── api/
└── rest/
🛠️ Technology Stack
- Language: Python 3.11+
- Framework: FastAPI
- AST Parsing: Tree-sitter + tree-sitter-java
- Graph DB: Neo4j 5.15+
- Vector DB: Qdrant 1.13+
- Embeddings: OpenAI text-embedding-3-small (1536 dims)
- Build Tools: Maven/Gradle parsing
🎓 Phase 1 Scope
- ✅ Language Support: Java only
- ✅ Analysis: Static (deterministic) - NO AI/LLM
- ✅ Dependencies: Internal + External (APIs, DBs, libraries)
- ✅ Storage: Dual (Neo4j graph + Qdrant vectors)
🚀 Future Phases
- 🔮 Phase 2: Multi-language (Python, JS/TS, Go, C#)
- 🔮 Phase 3: Advanced features (code quality, architectural patterns, complexity metrics)
📚 Documentation
- Specifications:
.sdd/specs/clean-architecture-batch-indexing/requirements.md- Functional requirementsdesign.md- Technical designtasks.md- Implementation tasksresearch.md- Research findings
🚀 Quick Start
Ver guia completo: QUICKSTART.md
# 1. Configurar .env
copy .env.example .env
# Editar .env com OPENAI_API_KEY
# 2. Subir Docker
docker-compose up -d
# 3. Instalar dependências
pip install -e .
# 4. Iniciar API
uvicorn src.presentation.api.rest.main:app --reload --port 8000
# 5. Testar
# Abrir http://localhost:8000/docs
🧪 Testing
# Run all tests
pytest tests/ -v
# Run with coverage
pytest tests/ --cov=src --cov-report=html
📋 Status
Current Phase: Setup & Implementation
Task Progress: See tasks.md for detailed progress
Created: 2026-06-30
Specification: clean-architecture-batch-indexing
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file graph_dependency_analyzer-0.2.0.tar.gz.
File metadata
- Download URL: graph_dependency_analyzer-0.2.0.tar.gz
- Upload date:
- Size: 160.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d78c102ac433ea4261287f04f611ee97ab4f935480969090b08517ca5aea97f
|
|
| MD5 |
6223be65bea7a7d43130cbc00b0b3690
|
|
| BLAKE2b-256 |
193cc50c30c7f4157d71ee764892b6bcf93a02dc618d7a29588bf9145def37e1
|
Provenance
The following attestation bundles were made for graph_dependency_analyzer-0.2.0.tar.gz:
Publisher:
publish.yml on ciandt-jeanp/new-arch-explorer-service
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
graph_dependency_analyzer-0.2.0.tar.gz -
Subject digest:
7d78c102ac433ea4261287f04f611ee97ab4f935480969090b08517ca5aea97f - Sigstore transparency entry: 2173881329
- Sigstore integration time:
-
Permalink:
ciandt-jeanp/new-arch-explorer-service@92c72b59971e9313dcc98469a23b319428aa9b6c -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/ciandt-jeanp
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@92c72b59971e9313dcc98469a23b319428aa9b6c -
Trigger Event:
push
-
Statement type:
File details
Details for the file graph_dependency_analyzer-0.2.0-py3-none-any.whl.
File metadata
- Download URL: graph_dependency_analyzer-0.2.0-py3-none-any.whl
- Upload date:
- Size: 162.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bcc0810845935712e8eb6da267f65ec11417301e6fb6702f0251d0ee5a39b86c
|
|
| MD5 |
e78eb88bebb092c625c5ed2974cedb7d
|
|
| BLAKE2b-256 |
ffec3c964f0af8f5712ecda35fd74e16f7622700f1db4f5af866bc9d76dc78be
|
Provenance
The following attestation bundles were made for graph_dependency_analyzer-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on ciandt-jeanp/new-arch-explorer-service
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
graph_dependency_analyzer-0.2.0-py3-none-any.whl -
Subject digest:
bcc0810845935712e8eb6da267f65ec11417301e6fb6702f0251d0ee5a39b86c - Sigstore transparency entry: 2173881382
- Sigstore integration time:
-
Permalink:
ciandt-jeanp/new-arch-explorer-service@92c72b59971e9313dcc98469a23b319428aa9b6c -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/ciandt-jeanp
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@92c72b59971e9313dcc98469a23b319428aa9b6c -
Trigger Event:
push
-
Statement type: