typedoc
Docusaurus
Our great sponsors
typedoc | Docusaurus | |
---|---|---|
29 | 282 | |
7,358 | 52,824 | |
1.6% | 2.3% | |
9.1 | 9.5 | |
13 days ago | 4 days ago | |
TypeScript | TypeScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
typedoc
-
Learn how to document JavaScript/TypeScript code using JSDoc & Typedoc
Firstly, install Typedoc using npm:
- Document Playwright tests with typedoc
-
90% less disk space + 80% faster doc generation w/ TypeDoc. Introducing the "Default Modern Theme" for TypeDoc + complete linkable API docs for the built-in TS lib declarations.
Background:The main bottleneck with the TypeDoc default theme especially for large projects is the verbose HTML for the left-hand navigation that linearly grows for each page based on the project size and consumes a massive amount of disk space; see this TypeDoc issue. The DMT caches the left-hand navigation HTML and dynamically creates a shared web component that is utilized across all pages only making a single copy of the navigation HTML. This reduces disk space utilization by up to 90% and also makes doc generation ~80% faster. I also include some style additions and replace the main search index generation using compressed MesssagePack instead of JSON which reduces the search index size by more than 90%.
-
Prim+RPC: a bridge between JavaScript environments. Easy-to-understand, type-safe, transport-agnostic RPC/IPC for JavaScript, supporting callbacks, batching, file uploads, custom serialization, and more.
While the Prim+RPC server is expected to be JavaScript, I'd like to support other languages through JSON Schema. I wrote a tool that translates TypeDoc comments into RPC-specific documentation. My plan is to turn this result into JSON Schema that can be served with the Prim+RPC server. This means you can get typed suggestions (for instance, from an IDE that understands JSON Schema) when writing requests in JSON files (I wrote a little about this here, still a WIP). From this, you could use your favorite HTTP client in the language of your choice, like but still benefit from having typed requests.
-
What software do you use to write documentation?
Docusaurus has a Typedoc plugin. Also there is a typedoc markdown plugin.
-
Mastering JSDoc: the complete guide for Javascript developers
Finally, JSDoc can be used to generate documentation for your code using tools like JSDoc itself and TypeDoc. These tools generate HTML or Markdown documentation based on your JSDoc annotations, making it easier for others to understand how your code works and how to use it.
-
Opinionated standards for JSDoc
Since you're using TypeScript, use TypeDoc.
-
How to create and publish a TypeScript library with ease
Generates HTML documentation using TypeDoc.
-
I created a game engine using TypeScript. Please roast it.
I was thinking of using something like https://typedoc.org to do it, do you have experience with this sort of tools?
-
Complete rewrite of ESLint (GitHub discussion by the creator)
TSDoc is more consistent, has cleaner documentation, better tooling (e.g. TypeDoc or ESLint plugin) and better support for data structures (e.g. straightforward enums support).
Docusaurus
-
Alternatives to Docusaurus for product documentation
Docusaurus is a popular open-source documentation tool primarily designed for product documentation and other technical documentation needs. It was first released in 2017 by Facebook Open Source (now Meta Open Source). Just recently, Docsaurus version 3.0 was released.
-
Docusaurus doesn't recognize brackets {} on the markdown files
// @ts-check // `@type` JSDoc annotations allow editor autocompletion and type checking // (when paired with `@ts-check`). // There are various equivalent ways to declare your Docusaurus config. // See: https://docusaurus.io/docs/api/docusaurus-config import { themes as prismThemes } from "prism-react-renderer"; /** @type {import('@docusaurus/types').Config} */ const config = { title: "My Site", tagline: "Dinosaurs are cool", url: "https://your-docusaurus-test-site.com", baseUrl: "/", onBrokenLinks: "throw", onBrokenMarkdownLinks: "warn", favicon: "img/favicon.ico", organizationName: "facebook", // Usually your GitHub org/user name. projectName: "docusaurus", // Usually your repo name. presets: [ [ "docusaurus-preset-openapi", /** @type {import('docusaurus-preset-openapi').Options} */ ({ docs: { sidebarPath: require.resolve("./sidebars.js"), // Please change this to your repo. editUrl: "https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/", }, blog: { showReadingTime: true, // Please change this to your repo. editUrl: "https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/", }, theme: { customCss: require.resolve("./src/css/custom.css"), }, }), ], ], themeConfig: /** @type {import('docusaurus-preset-openapi').ThemeConfig} */ ({ navbar: { title: "My Site", logo: { alt: "My Site Logo", src: "img/logo.svg", }, items: [ { type: "doc", docId: "intro", position: "left", label: "Tutorial", }, { to: "/api", label: "API", position: "left" }, { to: "/blog", label: "Blog", position: "left" }, { href: "https://github.com/facebook/docusaurus", label: "GitHub", position: "right", }, ], }, footer: { style: "dark", links: [ { title: "Docs", items: [ { label: "Tutorial", to: "/docs/intro", }, ], }, { title: "Community", items: [ { label: "Stack Overflow", href: "https://stackoverflow.com/questions/tagged/docusaurus", }, { label: "Discord", href: "https://discordapp.com/invite/docusaurus", }, { label: "Twitter", href: "https://twitter.com/docusaurus", }, ], }, { title: "More", items: [ { label: "Blog", to: "/blog", }, { label: "GitHub", href: "https://github.com/facebook/docusaurus", }, ], }, ], copyright: `Copyright © ${new Date().getFullYear()} My Project, Inc. Built with Docusaurus.`, }, prism: { theme: prismThemes.github, darkTheme: prismThemes.dracula, }, }), }; export default config;
- Looking for open source documentation generator
-
Show HN: A Python-based static site generator using Jinja templates
Facebook's React/Markdown SSG docusaurus does those things: https://docusaurus.io/
Though you may have to use a plugin for responsive images: https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-id...
- Craft Your GitHub Profile Page in 60 Seconds with Zero Code, Absolutely Free
-
Top 5 Open-Source Documentation Development Platforms of 2024
Docusaurus is an open-source static site generator built on React and has emerged as a popular tool for developing and maintaining product documentation. Its ease of use, extensive features, and robust community support make it a compelling choice for many organizations.
-
No CMS? Writing Our Blog in React
Wondering why Docusaurus (https://docusaurus.io) did not match their needs. Works perfectly fine as a blogging engine for our tech blog.
-
Best Software Documentation Tools
This is developed by Meta. You can create really nice-looking documentation websites super fast.
-
Can Git or any other VCS be used as a database instead of SQL/NoSQL ones? Have you ever seen such a thing?
Docusaurus, a documentation tool by Facebook, hosts a showcase of other websites that use Docusaurus on their Homepage. The list of websites of this showcase is a typescript files that is maintained by Docusaurus devs, and that you can add your website to through PR: https://github.com/facebook/docusaurus/blob/main/website/src/data/users.tsx
-
Community project: PreventRansomware.io
Fix "Edit this page" links at the bottom of each doc (Problem with the Docusaurus build I guess)
What are some alternatives?
tsdoc - A doc comment standard for TypeScript
nextra - Simple, powerful and flexible site generation framework with everything you love from Next.js.
storybook - Storybook is a frontend workshop for building UI components and pages in isolation. Made for UI development, testing, and documentation.
VuePress - 📝 Minimalistic Vue-powered static site generator
oauth2-proxy - A reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers.
mkdocs-material - Documentation that simply works
JSDoc - An API documentation generator for JavaScript.
docsify - 🃏 A magical documentation site generator.
jsx-readme - Generate Readme files with a React-like syntax and package.json-aware helpers.
MkDocs - Project documentation with Markdown.