Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace remark-toc with Docusaurus-native generated index pages #29

Open
ptgott opened this issue Nov 19, 2024 · 0 comments
Open

Replace remark-toc with Docusaurus-native generated index pages #29

ptgott opened this issue Nov 19, 2024 · 0 comments

Comments

@ptgott
Copy link
Contributor

ptgott commented Nov 19, 2024

We use the custom remark-toc plugin (gravitational/docs) to generate a list of docs pages at the same directory level as the page that invokes the plugin.

To invoke the plugin, a page includes the following line:

(!toc!)

In Docusaurus, you can embed an auto-generated list of category items using the <DocCardList /> tag (see the Docusaurus docs).

Let's consider using this approach to reduce the code we need to maintain.

ptgott added a commit that referenced this issue Dec 27, 2024
Partially addresses #29

Swizzle the Docusaurus-native `DocCardList` component and adapt it to
suit the Teleport docs site. Since we prefer a more text-oriented
approach to components, edit `DocCardList` to return a plain `ul`,
rather than tiles.

Since the `DocCardList` component is a Docusaurus-native alternative to
our `remark-toc` plugin, edit `remark-toc` to return a `DocCardList`
instead of querying the filesystem to generate a table of contents. Once
we replace all `(!toc!)` expressions with `<DocCardList />` elements, we
can remove `remark-toc` entirely.

Also make `DocCardList` an MDX component so docs authors don't need to
add `import` statements to the top of a docs page.
ptgott added a commit that referenced this issue Dec 27, 2024
Partially addresses #29

Swizzle the Docusaurus-native `DocCardList` component and adapt it to
suit the Teleport docs site. Since we prefer a more text-oriented
approach to components, edit `DocCardList` to return a plain `ul`,
rather than tiles.

Since the `DocCardList` component is a Docusaurus-native alternative to
our `remark-toc` plugin, edit `remark-toc` to return a `DocCardList`
instead of querying the filesystem to generate a table of contents. Once
we replace all `(!toc!)` expressions with `<DocCardList />` elements, we
can remove `remark-toc` entirely.

Also make `DocCardList` an MDX component so docs authors don't need to
add `import` statements to the top of a docs page.
ptgott added a commit that referenced this issue Jan 3, 2025
Partially addresses #29

Swizzle the Docusaurus-native `DocCardList` component and adapt it to
suit the Teleport docs site. Since we prefer a more text-oriented
approach to components, edit `DocCardList` to return a plain `ul`,
rather than tiles.

Since the `DocCardList` component is a Docusaurus-native alternative to
our `remark-toc` plugin, edit `remark-toc` to return a `DocCardList`
instead of querying the filesystem to generate a table of contents. Once
we replace all `(!toc!)` expressions with `<DocCardList />` elements, we
can remove `remark-toc` entirely.

Also make `DocCardList` an MDX component so docs authors don't need to
add `import` statements to the top of a docs page.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant