docs icon indicating copy to clipboard operation
docs copied to clipboard

Conceptual overview of chat components

Open kezz opened this issue 2 months ago • 1 comments

It seems like there is a big gap in understanding with a lot of users new to adventure, who have trouble with the concepts of chat components, having only been familiar with the legacy section-symbol system. It would be helpful to explain what components are and some of their key characteristics, ideally with some graphics. Here's a rough outline of what I'm imagining:

  1. What is a component?
    1. structured representation: the text form represents the data structure, rather than being marked-up text
    2. different types of content
    3. tree structure: see style
    4. appending: children in the tree (visual here?)
  2. Where did components come from?/Why do we want to use components?
    1. history: 1.7.2 introduction, 1.13 most of the server converted to use them, 1.16 client text renderer converted
    2. originally: a way to be more explicit about links and other rich styling
    3. references:
      • https://gist.github.com/Dinnerbone/5631634
      • https://gist.github.com/Dinnerbone/6488256
      • https://bugs.mojang.com/browse/MC-190605?focusedCommentId=993040
    4. examples of quirks/limitations of legacy text, and how chat components resolve those issues
  3. Style in components
    1. tree style
    • [visual] show a component tree with styles, show how they're inherited, and piecewise overridden
    1. attributes can exist together, no 'magical' reseting like legacy strings had
    2. more attributes can be added -- see font or RGB colour
  4. Examples
    1. Some side-by-side tables of json, adventure representation, and in-game visuals?
  5. History of components (can it be merged with 2?)
    1. version-by-version breakdown of what has been added/changed

Migrated from https://github.com/KyoriPowered/adventure-docs/issues/49

kezz avatar Oct 06 '25 13:10 kezz

I will note that a similar set of misunderstands occured over the command system and we had a fair amount of good results with adding a lot of pretty diagrams, etc; to explain basic trees

electronicboy avatar Oct 06 '25 13:10 electronicboy