Skip to content

Docusaurus customizations #2295

Open
Open
@slorber

Description

@slorber

Hi there, I'm the Docusaurus maintainer.

Your site has interesting customizations, and I'd like to discuss those.

In particular, noticed the custom theme components implemented by @jaredcbaum here: https://github.com/ionic-team/ionic-docs/blob/main/src/theme/

Unfortunately, this requires the ejection of a bit too much internal code.

We are trying to make such customizations simpler over time, with less code to manage on your side, and would like to discuss such opportunities with you.

Note that for the next version, we refactored a few theme components. Many large components have been split into smaller ones, so that you can more easily intersperse your own components before/after the default ones.

Please take a look and let us know if any of your use-cases now become simpler to implement, and if some further refactors could help you.


Some random bits:

  • We really want to provide a system for custom navbar item types, but your workaround seem to work fine until then (Theming: use custom components as navbar/sidebar/footer items facebook/docusaurus#7227)

  • We could refactor DocPage to allow you to more easily add your custom doc navbar

  • We could refactor DocItem more to allow you to more easily change the layout and plug your demo sandbox

  • We could add the doc meta to a React context and provide the hook so that things like editUrl in TOC do not require an extra prop

Those are just examples, open to anything as long as it's not too specific to your site and reusable by others.

Also open to knowing better which custom CSS rules are fragile and for which we could provide more stable class names

Note that we have a dedicated issue to report customization use-cases: facebook/docusaurus#5468

Metadata

Metadata

Assignees

No one assigned

    Labels

    structuralTechnical upgrades and changes to the docs platform itself

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions