6 ms·
I use Semantic UI in production on https://partsbox.io/ https://partsbox.io/ and can list some upsides and downsides. On the positive side: * very complete, w
by jwr 10y ago
I use Semantic UI in production on https://partsbox.io/ https://partsbox.io/ and can list some upsides and downsides.
On the positive side:
* very complete, with good form styling, and lots of widgets you will use often, which is especially important for larger apps,
* the default theme is mature and has good usability, without the crazy "oh, how flat and invisible our UI is!" look.
* the class naming plays well with React (I use ClojureScript and Rum) and looks good in your code,
On the negative side:
* the CSS is huge and there is little you can do to trim it down,
* the JavaScript code is not Google Closure-ready, so it's a drag compared to my ClojureScript codebase: large and unwieldy,
* there is a jQuery dependency, so I have to pull that in, too,
* the build system is… well, strange, let's put it that way. I'm used to typing "make" and getting things built, while this thing here insists on a) painting pretty pictures in the console window, b) crapping node_modules in a directory up from the one I'm building in, c) requires interactive feedback. I still haven't found a way to automatically build Semantic UI from a zip/tarball, and others seem to struggle with it, too.
Overall, I'm happy with the choice and it has been serving me well.
- ledgerdev 10y agoCool, just today I was just looking for something like sematic/bootstrap.v4 that works well with clojurescript, do you have any suggestions? Have you had any issues pulling in jquery alongside react?
- jwr 10y agoNo, no issues apart from the dead weight (jQuery can't be compiled with Google Closure advanced optimizations either). jQuery is almost invisible, you only notice it sometimes because of the `js/$` appearing in your code, as in the common idiom: `(-> state rum/dom-node js/$ (.popup popup-params))`.
- jasonm23 10y agoReact Semantic UI doesn't have the jQuery dependency.
- AbuAssar 10y agothey added a new silent install feature in version 2.2: "We've added a new semantic.json setting autoInstall which allows for silent install when Semantic UI is used in CLI environments, making testing more streamlined."
- deleted 10y ago[deleted]
- wut42 10y agoYou don't have to use their build system. I'm purely using the less version of Semantic, which is built as a normal less files. It also allows to pick individual components, to reduce the CSS file size.
- tzury 10y agoFYI: The React version - is jQuery free http://react.semantic-ui.com/introduction http://react.semantic-ui.com/introduction
- Pigo 10y agoThe Angular integrations seem to still use jQuery, that is such a bummer for me personally, it's like a bad omen.
- jwr 10y agoYes, I recently learned about that version. I am not yet sure whether it fits well with my ClojureScript code.
- espresso_enigma 10y agoI'm trying that out, and it seems that jquery is installed when you include the Semantic UI CSS. According to the docs: http://react.semantic-ui.com/usage http://react.semantic-ui.com/usage, you need to install the CSS separately with $ npm install semantic-ui-css --save and with that I get ├─┬ semantic-ui-css@2.2.10 │ └── jquery@3.2.1 Plus a whitescreen because jQuery is not defined...bummer
- espresso_enigma 10y agoSorted it, thanks to this: https://github.com/Semantic-Org/Semantic-UI-React/issues/1143#issuecomment-284625478 https://github.com/Semantic-Org/Semantic-UI-React/issues/114... import 'semantic-ui-css'; should have been import 'semantic-ui-css/semantic.min.css'; Documentation of how to actually import and use the CSS would be nice...might be obvious to the creators, but not to hardheads like myself.
- espresso_enigma 10y agoAs one would expect with a fully featured framework, it does add some weight. I have a basic form project I'm working on that just uses some basic styling and components that I hand coded and the production JS and CSS (after gzip) are ~70k and ~2k respectively. After including Semantic UI and dropping an example form component in, it jumped up to ~140k JS and ~93k CSS.
- krosaen 10y agoI also wanted to echo: cool project! Have you written about your experience using clojurescript?
- jwr 10y agoNo, and I probably should write up an experience report. The short version is that ClojureScript is fantastic and I would never have been able to create PartsBox without it. The long version is of course more nuanced :-) But there are surprisingly few downsides to using ClojureScript.