You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Volto uses since its inception SemanticUI as a component and CSS framework to build PastanagaUI, the Volto current design system. PastanagaUI currently powers both the public part and the CMSUI (the non-public content editing interface).
SemanticUI is unmantained and abandoned since some years ago, which creates a huge technical debt in a critical part of the CMS. Its footprint is also not acceptable for current modern frontend applications leading to performance issues.
We will remove Semantic UI from Volto in two chunks, since it's a big effort. We believe that it's more valuable to remove it before from the CMSUI first, then finalize the complete removal of Volto in this PLIP: #6323 By doing this, we could have projects completely SemanticUI free once this PR is completed.
This PLIP is not about implementing Quanta design system in Volto CMSUI. This does not mean that in the way there, we don't adopt some of the ideas in Quanta. In any case, this must be a blocker for this one to happen.
Deliverables
The CMSUI Volto components won’t use SemanticUI and it will be replaced by @plone/components components instead.
The removal must be compatible with the changes introduced in the new theme and theming story by:
How to use @plone/components along with its StoryBook
Assumptions
The work should be done in top of the Vite as bundler PR in order to avoid merging hell: #6050
and sync with main regularly.
The @plone/components library will be completed by features and components needed by this PR, so they can be reused anywhere.
We must issue a deprecation notice for SemanticUI and discourage its usage from now on, in core and in projects.
When we determine that @plone/components is ready for prime time, we should add it to core and do not use SemanticUI any more for new things.
Risks
This PLIP will break all customizations in CMSUI widgets (including form components), so we will need proper documentation on what we are breaking and how to overcome it.
Eventually, one option would be to create a side add-on that contains the old SemanticUI-based components so people can pull it and force it again. However, it is unlikely that someone would want to go backwards with this change. The CMSUI is something that you barely customize and if so, you will go forwards instead of backwards.
PLIP (Plone Improvement Proposal)
Responsible Persons
Proposer: Víctor Fernández de Alba (@sneridagh)
Seconder: Piero Nicolli (@pnicolli)
Abstract
Volto uses since its inception SemanticUI as a component and CSS framework to build PastanagaUI, the Volto current design system. PastanagaUI currently powers both the public part and the CMSUI (the non-public content editing interface).
SemanticUI is unmantained and abandoned since some years ago, which creates a huge technical debt in a critical part of the CMS. Its footprint is also not acceptable for current modern frontend applications leading to performance issues.
We will remove Semantic UI from Volto in two chunks, since it's a big effort. We believe that it's more valuable to remove it before from the CMSUI first, then finalize the complete removal of Volto in this PLIP: #6323 By doing this, we could have projects completely SemanticUI free once this PR is completed.
This PLIP is not about implementing Quanta design system in Volto CMSUI. This does not mean that in the way there, we don't adopt some of the ideas in Quanta. In any case, this must be a blocker for this one to happen.
Deliverables
The CMSUI Volto components won’t use SemanticUI and it will be replaced by
@plone/components
components instead.The removal must be compatible with the changes introduced in the new theme and theming story by:
Documentation on:
@plone/components
along with its StoryBookAssumptions
The work should be done in top of the Vite as bundler PR in order to avoid merging hell:
#6050
and sync with main regularly.
The
@plone/components
library will be completed by features and components needed by this PR, so they can be reused anywhere.We must issue a deprecation notice for SemanticUI and discourage its usage from now on, in core and in projects.
When we determine that
@plone/components
is ready for prime time, we should add it to core and do not use SemanticUI any more for new things.Risks
This PLIP will break all customizations in CMSUI widgets (including form components), so we will need proper documentation on what we are breaking and how to overcome it.
Eventually, one option would be to create a side add-on that contains the old SemanticUI-based components so people can pull it and force it again. However, it is unlikely that someone would want to go backwards with this change. The CMSUI is something that you barely customize and if so, you will go forwards instead of backwards.
Participants
Víctor Fernández de Alba (@sneridagh)
The text was updated successfully, but these errors were encountered: