GitShow/denoland/deno_doc
denoland

deno_doc

Documentation generator for Deno

by denoland
denodocumentation
Star on GitHubFork

Rust

296 stars73 forks51 contributorsActive · 4h agoSince 20200.206.0MIT

Meet the team

See all 51 on GitHub →
denobot
denobot205 contributions
crowlKats
crowlKats197 contributions
dsherret
dsherret125 contributions
bartlomieju
bartlomieju66 contributions
kitsonk
kitsonk65 contributions
crowlbot
crowlbot22 contributions
lucacasonato
lucacasonato20 contributions
kt3k
kt3k12 contributions

Languages

View on GitHub →
Rust94.6%
TypeScript1.9%
Handlebars1.6%
CSS1.3%
JavaScript0.5%
Dockerfile0%

Commit activity

Last 12 weeks · 54 commits

Full graph →

Community health

2 of 6 standards met

Community profile →
37
✓README✓License○Contributing○Code of Conduct○Issue Template○PR Template

Recent fixes

View closed PRs →
crowlKats
fix(html): give non-exported referenced types their own pagesMergedPR

Fixes jsr-io/jsr#165. A type that a package's public API refers to but does not export — in the reported case — is already documented by the parser: computes exactly the set of non-exported symbols reachable from the public API, and they land in the doc nodes with . The renderer then threw that away. lumped two different things together, and every listing, page and link filter used it: the author wrote , meaning "hide this"; the symbol simply isn't exported, meaning "this can't be imported". The second one shouldn't imply "and don't document it" — a signature that mentions a type is useless without the type. Before #837 these still got pages (the reference linked, even if the page wasn't listed); that PR stopped generating the pages and stopped linking to them, so the type now renders as plain text with nothing behind it. This splits the two: — the tag. Dropped everywhere: no listing entry, no search entry, no page, no link. — the declaration kind. Gets a page and is linkable, but is still left out of the listings and the search index, since a reader can't import it. stays as the union of the two, which is what the listing and search filters want. Page generation and (which decides what can be linked) now filter on instead. The page carries the tag it already had, and drops the usage block — that would otherwise offer an that cannot work. Before / after The signature's return type is a live link: …to a page that documents it, badged , with no usage block: Exported symbols keep their usage block: Tests A new test covers the whole shape: the non-exported type gets a page carrying its docs, the signature links to it, it stays out of both the module listing and the search index, and an type next to it still gets nothing. Two existing assertions in encoded the old behaviour ( must not get a page; the reference must not be linked) and are updated to the new one, plus assertions that it still stays out of the listing and search. The snapshot churn is mechanical: snapshots one file per index, and the two new pages (, — is a non-exported class that is typed with) sort before , shifting every later index by two. The next to in that fixture still gets no page, which is a nice confirmation that the split lands where it should.

crowlKats · 4h ago
crowlKats
feat: resolve variable aliases to the declarations they referenceMergedPR

Two long-standing gaps in variable documentation, both the same missing feature (alias-to-declaration inference): (the only way in TS to re-export a class while merging it with a modified type) documented as a bare variable — no methods, no members (jsr-io/jsr#694). (extracting a static method) documented as a variable with no type at all (jsr-io/jsr#1153). now resolves: an initializer through to the class or function declaration it names (including -wrapped declarations), documenting the alias as a declaration of that kind — class defs go through the same + heritage-docs path as inline class expressions; an initializer () to the static method it extracts, documenting the alias as a function with the method's signature. The alias's own JSDoc wins; an undocumented alias inherits the target's documentation (so above shows "Bar static method" with its /). Resolution is single-level and same-module; aliases of enums/namespaces and cross-module targets are left as they were. Spec tests cover the class alias (documented and undocumented targets, plus + merging à la 's ), a function alias, and the static-method extraction; no existing spec or html snapshot changed. Fixes jsr-io/jsr#694. Fixes jsr-io/jsr#1153.

crowlKats · 10h ago
crowlKats
feat(html): match destructured parameters to @param tags positionallyMergedPR

An array/object destructuring parameter binds no single name, so its documentation was silently dropped and the parameter rendered as with no description (jsr-io/jsr#604; previously tracked here as #574, which #809 fixed only for rest/default parameters). For destructured parameters, fall back to matching the tag by position, and take the tag's name as the display name — mirroring how TSDoc documents destructured parameters: now renders / entries with their descriptions instead of undocumented / . Guard rails: a tag naming an actual parameter binding is never matched positionally, so a named parameter's documentation can't be taken by a destructured one (covered in the fixture: with only keeps undocumented); property documentation tags () are excluded from positional matching. The existing test asserted the old drop-the-doc behavior; its own example ( on ) is exactly the case this feature exists for, so it now asserts the association. The signature line still shows the actual pattern; only the parameter doc entries pick up the tag names. Fixes jsr-io/jsr#604.

crowlKats · 10h ago
Structured data for AI agents

Repository: denoland/deno_doc. Description: Documentation generator for Deno Stars: 296, Forks: 73. Primary language: Rust. Languages: Rust (94.6%), TypeScript (1.9%), Handlebars (1.6%), CSS (1.3%), JavaScript (0.5%). License: MIT. Topics: deno, documentation. Latest release: 0.206.0 (4h ago). Open PRs: 6, open issues: 25. Last activity: 4h ago. Community health: 37%. Top contributors: denobot, crowlKats, dsherret, bartlomieju, kitsonk, crowlbot, lucacasonato, kt3k, zhmushan, magurotuna and others.

·@ofershap

Replace github.com with gitshow.dev