
Una cosa que me he dado cuenta trabajando con un framework orientado a componentes (vue, svetle, angular...) es que de normal creamos componentes que son puro UI rollo botones, inputs, etc.
Yo creo que es overkill, piensa que con Bootstrap lo hacíamos simplemente con clases.
Lo que mola de hacerlos componentes es que puedes sacar props para cada variante, ya que si lo haces como elemento HTML normal te tienes que acordar de las clases globales que tienes declarada para cada variante (además de posibles personalizaciones que necesiten de JS o HTML)