Metadata-Version: 2.4
Name: graph-dependency-analyzer
Version: 0.2.0
Summary: Knowledge Graph for multi-language repository dependency analysis — Java, TypeScript, Python, Groovy, SQL/Oracle
Author: Graph Project Team
License: MIT
Project-URL: Homepage, https://github.com/ciandt/new-arch-explorer-service
Project-URL: Repository, https://github.com/ciandt/new-arch-explorer-service
Project-URL: Issues, https://github.com/ciandt/new-arch-explorer-service/issues
Keywords: dependency-analysis,knowledge-graph,tree-sitter,neo4j,qdrant,architecture,impact-analysis,java,typescript,python,groovy,oracle
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: fastapi>=0.115.0
Requires-Dist: uvicorn>=0.32.0
Requires-Dist: qdrant-client>=1.13.0
Requires-Dist: neo4j>=5.15.0
Requires-Dist: httpx>=0.28.0
Requires-Dist: structlog>=24.1.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: pydantic-settings>=2.0.0
Requires-Dist: dependency-injector>=4.41.0
Requires-Dist: tenacity>=8.2.0
Requires-Dist: tree-sitter>=0.25.2
Requires-Dist: tree-sitter-java>=0.23.5
Requires-Dist: tree-sitter-typescript>=0.23.2
Requires-Dist: lxml>=5.0.0
Requires-Dist: pyyaml>=6.0.0
Requires-Dist: click>=8.1.0
Provides-Extra: dev
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.24.0; extra == "dev"
Requires-Dist: pytest-cov>=7.0.0; extra == "dev"
Requires-Dist: mypy>=1.8.0; extra == "dev"
Requires-Dist: ruff>=0.9.0; extra == "dev"

# 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 requirements
  - `design.md` - Technical design
  - `tasks.md` - Implementation tasks
  - `research.md` - Research findings

## 🚀 Quick Start

**Ver guia completo:** [QUICKSTART.md](./QUICKSTART.md)

```bash
# 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

```bash
# 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
