from pathlib import Path ROOT_DIR = Path(__file__).resolve().parents[2] DATA_DIR = ROOT_DIR / "data" REPOS_DIR = DATA_DIR / "repos" CACHE_DIR = DATA_DIR / "cache" GRAPH_DIR = DATA_DIR / "graphs" SUPPORTED_EXTENSIONS = { ".py", ".js", ".jsx", ".ts", ".tsx", ".java", ".go", ".rs", ".cpp", ".cc", ".cxx", ".hpp", ".h", ".yaml", ".yml", ".json", ".md", ".txt", ".env", ".example", } IGNORE_DIRS = { ".git", ".idea", ".vscode", "__pycache__", ".pytest_cache", ".mypy_cache", "node_modules", "venv", ".venv", "env", "dist", "build", "target", ".next", } MAX_FILE_BYTES = 800_000 LANGUAGE_MAP = { ".py": "python", ".js": "javascript", ".jsx": "jsx", ".ts": "typescript", ".tsx": "tsx", ".java": "java", ".go": "go", ".rs": "rust", ".cpp": "cpp", ".cc": "cpp", ".cxx": "cpp", ".hpp": "cpp", ".h": "cpp", ".yaml": "yaml", ".yml": "yaml", ".json": "json", ".md": "markdown", ".txt": "text", ".env": "env", ".example": "text", } TREE_SITTER_LANGUAGES = { "python", "javascript", "typescript", "tsx", "jsx", "java", "go", }