Interface with typescript structured content tools to support a wide range of SSGs #10394
Replies: 1 comment
-
Here's an example of an issue that arises in trying to co-opt the docusaurus mdx or gfm to be compatible with content-collections and fumadocs: fuma-nama/fumadocs#644. As nice as it would be to have a single solution that works for a wide variety of frameworks, it might be just as easy to continue writing separate extensions with relevant lua filters for each one, as has already been done for hugo and docusaurus, since each framework tends to have minor differences that evolve separately over time and this is already partially accounted for in the markdown |
Beta Was this translation helpful? Give feedback.
-
Description
Following up on #9292, one way of achieving support for a broad range of SSGs could be to interface with typescript structured content management tools such as
as one or both of these could be used as intermediates to support several different typescript-ecosystem frameworks that can render static content. For example, interfacing with content-collections should be able to be used to bridge support to vite(press), next(ra)/fumadocs, remix, solid, qwik, and svelte among others.
Since both of the structured content management tools mentioned above and several of the SSGs support mdx (or gfm), the built-in docusaurus extension and docs are probably good references. It may be that the docusaurus extension is already fairly close to a generic and broadly compatible mdx generator (but see #10394 (comment) for a counter-example).
With content-collections, if quarto can be used as a typescript library, it could provide a custom compileMarkdown function instead of the one that is built-in to content-collections that directly compiles qmd to html, which is clearly possible via the quarto cli.
This might also help with #6552 as it would push the layout configuration into the relevant SSG.
Beta Was this translation helpful? Give feedback.
All reactions