-
Notifications
You must be signed in to change notification settings - Fork 155
Migrate from Semantic UI to Fomantic UI #190
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
base: 2.022
Are you sure you want to change the base?
Conversation
Fixed zoraxy link typo
- Bugfix: icons are too large in mobile view - Adjust top and bottom padding of `fileOprBtn` on mobile - Rewrite part of code with native JS for better performance - Update translations
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR migrates the project’s UI framework from Semantic UI to Fomantic UI to ensure ongoing maintenance and feature improvements.
- Introduces Fomantic UI CSS and JavaScript for components: Flyout, Flag, Feed, and Embed.
- Updates the Embed component’s CSS to replace Semantic UI Video styles with Fomantic UI Embed styles.
- Harmonizes style syntax (removes
px
suffixes, normalizes color properties, updates header comments).
Reviewed Changes
Copilot reviewed 178 out of 525 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
src/web/script/fomantic/components/flyout.css | Added new Flyout component styles |
src/web/script/fomantic/components/flag.min.css | Added minified Flag component CSS |
src/web/script/fomantic/components/flag.css | Added full Flag component CSS |
src/web/script/fomantic/components/feed.min.css | Added minified Feed component CSS |
src/web/script/fomantic/components/feed.css | Added full Feed component CSS |
src/web/script/fomantic/components/embed.min.css | Added minified Embed component CSS |
src/web/script/fomantic/components/embed.js | Added Embed component JavaScript |
src/web/script/fomantic/components/embed.css | Updated Embed component CSS, replaced Video overrides |
Comments suppressed due to low confidence (2)
src/web/script/fomantic/components/embed.css:66
- [nitpick] Changed selector from
.ui.embed > .icon
to.ui.embed > i.icon
, restricting icons to<i>
elements. Ensure any existing usage of.icon
on other element types is updated or this may break.
.ui.embed > i.icon {
src/web/script/fomantic/components/embed.css:146
- [nitpick] The “Video Overrides” and “Site Overrides” sections have been moved to the end of the file, which may reduce readability. Consider grouping override sections closer to related core definitions for easier maintenance.
/*******************************
url = url || module.get.url(); | ||
if (url) { | ||
$.each(sources, function (name, source) { | ||
if (url.search(source.domain) !== -1) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using String.search
with an unescaped string compiles a regular expression and may cause unintended matches. Consider using String.includes(source.domain)
or explicitly escaping special characters for reliable domain checks.
if (url.search(source.domain) !== -1) { | |
if (url.includes(source.domain)) { |
Copilot uses AI. Check for mistakes.
Semantic UI has not seen any updates in the past three years, and the project appears to be effectively abandoned. This is further confirmed by community discussions and the lack of responses on open issues such as Semantic UI Issue #6109.
This PR proposes migrating from Semantic UI to Fomantic UI, a well-maintained fork that aims to provide 100% compatibility with Semantic UI while continuing active development. Fomantic UI brings improved security, enhanced stability, and additional features—all without breaking existing implementations.
I have personally migrated and tested this change in a production environment over the past three months, and no issues related to the UI library have been observed during that time. The migration was seamless, and all components behaved as expected.
Switching to Fomantic UI ensures long-term maintainability and access to bug fixes and improvements that the original Semantic UI no longer receives. I believe this change will benefit the project's future development and maintenance.