Gerrit0 / gentsdoc

A documentation generator for Typescript projects.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Status

On hold - I don't want to duplicate work done over at Microsoft/tsdoc

Gentsdoc

Build Status Greenkeeper badge

Progress

  1. Basic JSON structure complete
  2. Markdown done for enum and function

Goals

  1. JSON schema for documenting Typescript projects, the following features should be documented:
    • Enumerations, including declaration merging, string enums, and merging doc comments.
    • Functions, including multiple signatures, destructured parameters, rest parameters, and generics.
    • Classes, with support for both static and instance properties and functions and generic classes.
    • Interfaces, with support for generics and call signatures.
    • Types, with support for generics and documenting tuple types.
    • Support for both named and default exports.
    • Support for documenting regular variable exports.
  2. CLI entry point for specifying input and output files and options for treating declaration files.
  3. Programmable entry point with the same capabilities as the CLI entry point.
  4. Basic markdown theme.
  5. HTML theme with support for user (sub?)themes.
  6. Plugin structure for custom themes if the html theme is too limiting.

Non-goals (for now)

  1. Documenting files which are not ES Modules.
  2. Support for namespaces. See the Typescript handbook for why you should not use namespaces in modules.

Motivation

I have used Typedoc in the past for generating documentation for Typescript projects. In general, I enable Greenkeeper to avoid outdated dependencies and potential vulnerabilities. This presents a problem with Typedoc since Typedoc relies on internal APIs and cannot be automatically updated to the latest version. In addition to this, at the time of this writing, Typedoc's tests are broken and cannot be used to determine if changes to the application break anything. Typedoc is an amazing tool, but cannot always be used with the latest version of Typescript which makes using it difficult for projects with Greenkeeper.

About

A documentation generator for Typescript projects.

License:MIT License


Languages

Language:TypeScript 100.0%