google-summer-of-code icon indicating copy to clipboard operation
google-summer-of-code copied to clipboard

[Idea]: refactor generated TypeScript interface documentation

Open kgryte opened this issue 3 years ago • 2 comments

Idea

Currently, stdlib publishes TypeScript interface documentation in its web-based API documentation. The generated documentation monkey-patches tsdoc to handle generating documentation across the entire mono-repo. The goal of this project is to refactor/rethink this approach and provide a solution capable of addressing the unique constraints of the stdlib project.

Expected Outcomes

At a base level, it would be great if we had a working documentation render which did not require monkey-patching. A more difficult, but potentially more desirable, outcome would be if TypeScript documentation was not rendered as a separate website, but rather was integrated within the docs as simply another page/fragment.

Involved Software

No other software is necessary.

Prerequisite Knowledge

JavaScript, Node.js, HTML/CSS, TypeScript, JSX/React.

Difficulty

Intermediate.

Project Length

175/350 hours. Length will depend on the nature of the proposed solution (e.g., needing to write a custom TypeScript parser vs modifying the existing tsdoc library).

Potential Mentors

@kgryte @Planeshifter @steff456

kgryte avatar Jan 11 '23 23:01 kgryte

Hi, I'm Hari, and I’m interested in contributing to stdlib. I found the TypeScript documentation refactor project interesting, especially the challenge of eliminating the need for monkey-patching, and also this project aligns well with my skillsets.

I have experience with JavaScript, TypeScript, React, Node.js, and documentation tools. I’ve been exploring the current stdlib documentation setup and would love to understand more about the main pain points with the existing approach.

Are there any ongoing discussions or specific areas where contributions would be most valuable?

Looking forward to your guidance!

atomiclifestyle avatar Feb 28 '25 04:02 atomiclifestyle

For those interested in this project, you can find out more about the current state of things at the following places in the code base:

  • https://github.com/stdlib-js/stdlib/blob/develop/tools/make/lib/docs/typedoc.mk
  • https://github.com/stdlib-js/stdlib/tree/develop/etc/typedoc

kgryte avatar Feb 28 '25 08:02 kgryte