Latest updates and announcements.
The Tag and PIN inputs have been around since v0.0.9, but they never really had JavaScript behavior. Now that we have custom components, why not make them first-party components so you don’t have to resort to external libraries? And, if you did, just note that their class names have changed for consistency. So, if you’re using the following classes, here are the changes:
| Original | New |
|---|---|
.uk-tag-input | uk-input-tag |
.uk-pin-input | .uk-input-pin |
.uk-pin-separated | .uk-input-pin-separated |
Also, the class .uk-tag has had its background default background remove in favor of modifiers .uk-tag-primary, .uk-tag-secondary and .uk-tag-danger.
A lesson learned for all of us using Hooks.
As you probably know, our current “skin” (shadcn/ui) is essentially just a bunch of pre-configured hooks. If you’re not familiar with Hooks, it’s a way of saying, “Hey, override these rules.”
People who are using v0.1.1 for the plugin and v0.0.4 for CDN.

So the code above, essentially means, Find me the key of @media (min-width: 768px) and replace it with:
.uk-comment-list .uk-comment ~ ul: {
paddingLeft: null
}
What it means is, I want to remove the paddingLeft created by UIkit. Although I’m forgetting one thing: media queries won’t nest the rules.
So, what happened was it replaced all rules under @media (min-width: 768px) with nothing. Because when you put null as value, we’re essentially deleting that rule.
The proper way of removing the paddingLeft was just to target the rule, and call Tailwind CSS utility from there. So, in our case, there is a hook available called hook-list-sub and it will target .uk-comment-list .uk-comment ~ ul. So, it should have been:
'hook-list-sub': {
'@apply ml-6 mt-6 border-l border-border md:pl-0': {}
}
Where we simply need to put md:pl-0.
Do not mess with media queries. Instead, call responsive utilities, such as sm:*, md:*, lg:*, etc and let the Tailwind CSS or PostCSS do the rest.
A couple of minor additions and fixes for this month.
i18n attribute to Select component.1rem.This version is all about reducing friction and helping you get started with your app as quickly as possible.
1. Safelist Property Removal
The safelist property have been removed from presetQuick. If you’re using multiple presets, Tailwind CSS might ignore this property. To avoid issues, move the safelist to your own tailwind.config.js file.
/** @type {import('tailwindcss').Config} */
export default {
+ safelist: [
+ {
+ pattern: /^uk-/,
+ },
+ ],
};
That’s it! The rest of the changes are optional, and you can continue with your existing setup. However, if you want to take advantage of the DX improvements, keep reading.
1. Simplify UIkit Imports
If you’re importing UIkit and its icons from NPM using the uikit package, you can remove that import. Franken UI now includes UIkit as a peerDependency. Instead, import UIkit from franken-ui in your app.js file.
npm remove uikit
- import UIkit from "uikit";
- import Icons from "uikit/dist/js/uikit-icons.js";
+ import { UIkit, Icons } from "franken-ui/uikit/js/dist";
UIkit.use(Icons);
window.UIkit = UIkit;
2. Streamline PostCSS Config
If you have postcss-sort-media-queries and postcss-combine-duplicated-selectors installed, you can remove them in your postcss.config.js file and import from franken-ui instead.
npm remove postcss-sort-media-queries postcss-combine-duplicated-selectors
module.exports = {
plugins: [
require('tailwindcss'),
- require('postcss-sort-media-queries')({
+ require('franken-ui/postcss/sort-media-queries')({
sort: 'mobile-first'
}),
- require('postcss-combine-duplicated-selectors')({
+ require('franken-ui/postcss/combine-duplicated-selectors')({
removeDuplicatedProperties: true
})
]
};
These changes are optional, and you can revert to your previous setup if you encounter any issues.
npx franken-ui init command! Learn more about it on our new installation page.only and except properties for presetQuick. Learn more about these on our new installation page.small and xsmall sizes for button, icon and iconnav components, and small variant for form input. Also, added shadow-sm for icon component..uk-list color modifiers.shadcn-ui path instead of listing subpaths, hexes.js now exports function to convert HSL to hex instead of hardcoded hex.3.20.8 to 3.21.5.uk-divider heightuk-description-list-divider wrong border color and hookpresetQuick()gap-6presetQuick()!p-6 or consider using hooks.shadow to shadow-sm| Screen | Original | New |
|---|---|---|
| SM | 640px | 640px |
| MD | 960px | 768px |
| LG | 1200px | 1024px |
| XL | 1600px | 1280px |
presetQuick()uk-accordion-title alignmentuk-tab-left and uk-tab-right wrong border colorhooks.ts for better maintenance.uk-nav-primary and .uk-nav-secondary.uk-button-text and .uk-button-link