Torna alle funzionalità
Funzionalità principale

Transclusione di simboli

Scrivi un wiki-link a un nome di funzione e il corpo della funzione viene renderizzato al suo posto, con evidenziazione della sintassi, estratto direttamente dai file sorgente. L'estrazione basata su AST funziona per 40+ linguaggi: Python, Swift, JavaScript, TypeScript, Go, Rust, Java, C, C++, Ruby, Kotlin e altro. Modifica il sorgente, il documento si aggiorna.

example.md
# Incorpora una funzione per nome
![[auth.py#validate_token]]

Ohai estrae la funzione validate_token da auth.py e la renderizza inline con evidenziazione della sintassi. Quando la funzione cambia, la documentazione si aggiorna automaticamente.

Perché è importante

La documentazione tradizionale invecchia. Copi e incolli il codice nel markdown, il codice evolve e improvvisamente la tua documentazione ti sta mentendo. La transclusione di simboli risolve questo problema trattando i file sorgente come l'unica fonte di verità.

A differenza dei riferimenti al numero di riga che si rompono ad ogni refactoring, la transclusione di simboli utilizza il parsing AST per trovare il codice tramite il suo nome effettivo—funzioni, classi, struct, costanti. Rinomina un file, riorganizza il codice, aggiungi nuovi metodi—finché il nome del simbolo esiste, la documentazione resta accurata.

Casi d'uso

Documentazione API

Fai riferimento alle firme delle funzioni effettive, non ad approssimazioni scritte a mano che vanno fuori sincronia.

Architecture Decision Records

Incorpora il codice che stai discutendo negli ADR. Gli esempi restano aggiornati man mano che la codebase evolve.

Guide di onboarding

Mostra ai nuovi sviluppatori come funziona l'autenticazione con codice live di cui possono fidarsi che corrisponda al repository.

Code review

Estrai funzioni specifiche in un riepilogo markdown per revisione e discussione asincrona.

Tutorial

Illustra implementazioni reali. I lettori possono fidarsi che gli esempi di codice siano sempre aggiornati.

Runbook

Incorpora la configurazione esatta o lo script a cui il team operativo deve fare riferimento durante gli incidenti.

Linguaggi supportati

Analisi AST Tree-sitter per Python, Swift, JavaScript, TypeScript, Go, Rust, Java, C, C++, Ruby, Kotlin, PHP, Scala, Haskell, OCaml, Lua, Elixir, Bash e altro — più estrattori di percorsi per formati dati per chiavi JSON, percorsi YAML, tabelle TOML, percorsi plist, XML, CSS, SQL e testo normale. 40+ formati in totale.

PythonSwiftTypeScriptJavaScriptRustGoRubyJavaKotlinCC++C#HaskellElixirScalaRJuliaPerlPHPDartZigVOCamlObjective-CMATLABLuaSQLVerilogJSXTSXJSONYAMLTOMLXMLPlistCSSHTMLMarkdownShellPlain Text

Pronto a provare documentazione che non invecchia mai?

Scarica per Mac