Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PLIP 6321] Remove Semantic UI from CMSUI #6522

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
24 changes: 24 additions & 0 deletions PLIPs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Useful Information while developing PLIPs
sneridagh marked this conversation as resolved.
Show resolved Hide resolved

## 6321 - Remove Semantic UI from CMSUI

Link to PLIP: [Remove Semantic UI from CMSUI](https://github.com/plone/volto/issues/6321)

### Directives

This PLIP is targeted to Plone 7.
The main goal is to get rid of SemanticUI powered components in the CMSUI.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
It is expected to be a long lived branch, and we probably will want some of the changes already available for the API-first story, let's make some assumptions and rules.

All SemanticUI basic, fundamental components should be replaced by their counterparts in `@plone/components`.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
Every time that we find that this components are missing, we should create them in `@plone/components` then used in Volto components.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
These components will follow the `@plone/components` best practices, written in TypeScript, have accessibility tests and Storybook story.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
We'd like to have these new components out of this PR and used right away, so let's make all the commits around them as atomic as possible so we can cherry pick them safely and push for them in the main branch.

Every new component used in the CMSUI will be transfered from Volto core to a package: `@plone/cmsui`.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
By doing so, we will keep track of every new "clean" component and potentially, being able to extract them when we want, and use them in "real" life right away.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
It will help also to avoid merging hell.
When this PLIP is done, the `src/components/manage` folder should be empty (or almost empty).
Code in Volto will remain references and imports to the `@plone/cmsui` package.

Once we start, only meaningful changes in `main` in CMSUI components will be backported, in order to again, avoid merging hell.
sneridagh marked this conversation as resolved.
Show resolved Hide resolved
Loading