Skip to content

Supported File Types

Fresh

Code — Tree-sitter AST (Local, No LLM)

These files are processed entirely locally via tree-sitter. No network calls, no API costs.

LanguageExtensionsExtracts
Python.pyClasses, functions, imports, call graphs, docstrings
JavaScript.js, .mjs, .cjsFunctions, classes, imports, exports
TypeScript.ts, .tsxSame as JS + type annotations
Go.goFunctions, structs, interfaces, imports
Rust.rsStructs, enums, functions, traits, use statements
Java.javaClasses, methods, imports
C.c, .hFunctions, structs, #include statements
C++.cpp, .hpp, .ccClasses, methods, templates
Ruby.rbClasses, methods, requires
C#.csClasses, methods, namespaces
Kotlin.ktClasses, functions, imports
Scala.scalaClasses, objects, imports
PHP.phpClasses, functions, use statements
Swift.swiftClasses, structs, functions
Lua.luaFunctions, requires
Zig.zigFunctions, structs
PowerShell.ps1Functions, cmdlets
Elixir.ex, .exsModules, functions, aliases
Objective-C.m, .mmClasses, methods
Julia.jlFunctions, modules
Verilog.vModules, ports
SystemVerilog.svModules, interfaces
Vue.vueComponents, props, emits
Svelte.svelteComponents, props
Dart.dartClasses, functions, imports

Documents — LLM Extraction (Sends to API)

FormatExtensionNotes
Markdown.mdConcept and relationship extraction
Plain Text.txtConcept extraction
reStructuredText.rstConcept extraction
Word Document.docxFull text extraction
Excel.xlsxTable and data extraction
PDF.pdfFull text + citation extraction

API Cost Note

Document extraction sends file content to your platform's LLM API. Large PDF libraries can generate significant API costs. Use .graphifyignore to exclude docs you don't need in the graph.

Media — Vision and Transcription (Local)

TypeExtensionsProcessing
Images.png, .jpg, .jpeg, .webp, .gifClaude vision model — extracts concepts from diagrams, screenshots, whiteboard photos
Video.mp4, .mov, .webmfaster-whisper transcription (local) + LLM concept extraction
Audio.mp3, .wavfaster-whisper transcription (local) + LLM concept extraction
YouTubeURLDownloads transcript via yt-dlp + LLM concept extraction

Privacy

Video and audio transcription runs locally via faster-whisper. No audio is sent to any external server.

What Gets Excluded Automatically

Graphify excludes these by default even without a .graphifyignore:

  • .git/
  • node_modules/
  • __pycache__/
  • .venv/, venv/
  • dist/, build/
  • graphify-out/ (prevents graph from indexing itself)
  • Binary files (executables, compiled artifacts)
  • Files larger than the configured max size (default 10MB)