Link to the documentation you'd like to improve
https://sphinx-design.readthedocs.io/en/latest/get_started.html#
What to improve
First of all, sphinx-design is beautiful, thanks @chrisjsewell the team for implementing this!
TL;DR: I propose to better expose the internal API of sphinx-design and encourage users implement their own semantic directives based on the sphinx-design components.
Looking at the sphinx-design rst API, I notice that it mainly implements high-level tools for implementing components. If the documentation authors use these directly, the markup of the documentation mixes the presentation with the semantics. By comparison, most if not all sphinx directives have a clear semantic meaning.
I imagine that most sites won't use the entirety of the options, but will find a few specific configurations that work for them, for example a simple self-check question could look like something along these lines:
:::{dropdown} {fas}`unverified` Check yourself: what is $d \exp x/dx$?
:animate: fade-in-slide-down
:color: info
It's $\exp x$!
:::
At the same time, the documentation author would probably rather want to write something like
:::{question} Check yourself: what is $d \exp x/dx$?
It's $\exp x$!
:::
This is straightforward to implement, and it doesn't require any reorganization from sphinx-design itself, but:
- Not all authors will come up with the idea, rather than having overly verbose and error-prone sources
- Without the sphinx API documented, the task requires a source dive.
Therefore I propose to have this use case in mind, and along with the markup corresponding to the directives and roles to document the corresponding nodes, potentially also providing a tutorial for implementing semantic components of one's own.
Link to the documentation you'd like to improve
https://sphinx-design.readthedocs.io/en/latest/get_started.html#
What to improve
First of all, sphinx-design is beautiful, thanks @chrisjsewell the team for implementing this!
TL;DR: I propose to better expose the internal API of sphinx-design and encourage users implement their own semantic directives based on the sphinx-design components.
Looking at the sphinx-design rst API, I notice that it mainly implements high-level tools for implementing components. If the documentation authors use these directly, the markup of the documentation mixes the presentation with the semantics. By comparison, most if not all sphinx directives have a clear semantic meaning.
I imagine that most sites won't use the entirety of the options, but will find a few specific configurations that work for them, for example a simple self-check question could look like something along these lines:
At the same time, the documentation author would probably rather want to write something like
This is straightforward to implement, and it doesn't require any reorganization from sphinx-design itself, but:
Therefore I propose to have this use case in mind, and along with the markup corresponding to the directives and roles to document the corresponding nodes, potentially also providing a tutorial for implementing semantic components of one's own.