HTML-first, framework-agnostic implementation of shadcn/UI – franken/UI

sveltecult | 211 points

Why is this advertised as HTML-first and framework-agnostic ? It directly leverages tailwind and UIKit libraries. That is NOT framework agnostic by any means.

lenkite | 11 days ago

Have to agree with most of the commenters here, framework-agnostic really means independent of any framework. This one is built on top of the CSS framework which adds a whole build step. So it was really better to go with a less misleading title like Tailwind CSS implementation of shadcn/UI

gloosx | 11 days ago

This is definitely not HTML first, though. This is TS first, JS second, CSS third, and only then, HTML last. I'm all for clean frameworks, but this is very far removed from the idea of putting HTML first.

TheRealPomax | 11 days ago

It doesn't seem HTML-first though. Also the Github description says it's a library of web components, this may be misleading because this project doesn't use Web Components.

mubu | 11 days ago

Foolish of me to think "HTML-first" meant it wouldn't require nodejs/npm and that dependency hell.

hanniabu | 11 days ago

> framework-agnostic

> Franken UI is a Tailwind CSS plugin

:|

afavour | 11 days ago

This is exactly what I was looking for. I love Stripe's UI and I was looking for a library of unified components that I can copy paste with my Rails app. Then I saw shadcn and was disappointed that it was only for React.

I'm mostly a backend developer and TailwindCSS really enabled me to be bold with working with frontend CSS. So far I've been copy pasting examples from Tailwind or Flowbite. But "franken" really looks much closer to what I was looking for, a cleaner opinionated unified interfaces that I can put together, works with Tailwind and can be used with Rails.

Thanks for the work on this.

bibstha | 11 days ago

I was just looking at shadcn and thinking it's a shame it was react specific. Looking forward to seeing if this is viable to use in a server rendered site with htmx!

naasking | 11 days ago

The demo at the very least appears to assume a lot about font sizes or shapes. It is very broken on my setup with everything escaping the bounds that it is presumably supposed to live in:

https://pasteboard.co/6Z1nLEWhPHRg.png

However I do like the dark theme. It manages to separate different areas without too much noise which can be hard to do without shadows.

kevincox | 11 days ago

"HTML-first" -> Opens the docs and sees a bunch of javascript... Haha. Am I missing something? I was expecting to see `<section class="rounded white content">` or similar not `ui({ components: { countdown: {hooks: {}, media: false} } })`.

snow_mac | 10 days ago

I noticed on difference between franken-ui.dev and ui.shadcn.com

The navigation between the different exmaples on https://www.franken-ui.dev/examples/mail refreshed the website and did not restore the scroll position.

While on https://ui.shadcn.com/examples/mail, switching between the different examples keeps the scroll position and does not refresh the page.

Alifatisk | 9 days ago

We just built a JS-frontend-framework-agnostic library because we have Vue, React, and Svelte. We found that the trade off was that it worked poorly in all of them and we couldn’t take advantage of their individual strengths.

We’ve since switched to React-based and found that, because support for React is so high, they can be incorporated elsewhere more seamlessly than “agnostic” components.

anomaloustho | 10 days ago

> I mean you do not install it as a dependency. It is not available or distributed via npm.

> You can use the diff command to check for updates against the registry.

Isn't that a contradiction? So they do offer automatic importing & updating but refuse to use the infrastructure everyone else is using and instead copy/paste their files directly into your project with their cli?

Traubenfuchs | 11 days ago

How about some color? Or in other words, how much longer until the Vercel-inspired brutalism fad wears off?

andrethegiant | 11 days ago

I still wonder why they cannot use <detail> tag for a dropdown instead of using JS.

devops000 | 11 days ago

HTML-first, yet there’s not a single line of it in the documentation’s introduction.

tambourine_man | 11 days ago

Great! If you're not using common frontend stacks, UI kits become annoying to use if they don't have any stock HTML (or close to it Tailwind like this) versions.

TheCapeGreek | 11 days ago

It looks similar to Tailwind UI and other free and paid alternatives which components you can also reuse and modify at will.

But it's always good to have other options like this one.

begueradj | 11 days ago

I’ve been looking for something like this forever. Thank you!

replwoacause | 10 days ago

This is great, have been looking for something like this.

kewp | 11 days ago

Very disappointed. It’s typescript, not quite framework independent.

https://github.com/sveltecult/franken-ui/tree/master/src/lib...

I am using golang and htmx and am looking around for a simple html based system .

Daisyui or something might work

gedw99 | 10 days ago

Looks cool!

canadiantim | 11 days ago

This made me want to unlearn react.

squigglydonut | 11 days ago

Mods are asleep and someone bombarding HN with spam..

ivanjermakov | 11 days ago

[dead]

SEXMCNIGGA11537 | 11 days ago

[dead]

SEXMCNIGGA34130 | 11 days ago

[dead]

SEXMCNIGGA16603 | 11 days ago

[dead]

2genders3253 | 11 days ago

[dead]

SEXMCNIGGA35416 | 11 days ago

[dead]

2genders27218 | 11 days ago

[dead]

SEXMCNIGGA8027 | 11 days ago

[dead]

SEXMCNIGGA33051 | 11 days ago

[dead]

SEXMCNIGGA18717 | 11 days ago

[dead]

SEXMCNIGGA16153 | 11 days ago

[dead]

2genders31142 | 11 days ago

[dead]

SEXMCNIGGA21425 | 11 days ago

[dead]

SEXMCNIGGA29695 | 11 days ago

[dead]

SEXMCNIGGA20978 | 11 days ago

[dead]

SEXMCNIGGA14503 | 11 days ago

[dead]

2genders1206 | 11 days ago

[dead]

SEXMCNIGGA15607 | 11 days ago

[dead]

indianmilf11409 | 11 days ago

[dead]

indianmilf30045 | 11 days ago

[dead]

indianmilf45976 | 11 days ago

[flagged]

indianmilf11877 | 11 days ago

[flagged]

indianmilf35174 | 11 days ago

[flagged]

indianmilf4363 | 11 days ago

[flagged]

sexmc9970 | 11 days ago

[flagged]

sexmc16058 | 11 days ago

[flagged]

sexmc6421 | 11 days ago

[flagged]

sexmc37338 | 11 days ago

[flagged]

sexmc36604 | 11 days ago

[flagged]

indianmilf15961 | 11 days ago

[flagged]

sexmc29153 | 11 days ago

[flagged]

sexmc28911 | 11 days ago

[flagged]

sexmc8025 | 11 days ago

[flagged]

indianmilf21126 | 11 days ago

[flagged]

indianmilf48444 | 11 days ago

[flagged]

indianmilf31403 | 11 days ago

[flagged]

sexmc35688 | 11 days ago

[flagged]

sexmc35838 | 11 days ago

[flagged]

indianmilf34854 | 11 days ago

[flagged]

sexmc12141 | 11 days ago

[flagged]

sexmc16673 | 11 days ago

[flagged]

sexmc32264 | 11 days ago

[flagged]

sexmc33615 | 11 days ago

[flagged]

sexmc1649 | 11 days ago

[flagged]

sexmc28363 | 11 days ago

[flagged]

2genders37082 | 11 days ago

[flagged]

2genders4161 | 11 days ago

[flagged]

2genders49491 | 11 days ago

[flagged]

2genders2513 | 11 days ago

[flagged]

2genders9163 | 11 days ago

[flagged]

2genders36035 | 11 days ago

[flagged]

2genders20183 | 11 days ago

[flagged]

2genders6966 | 11 days ago

[flagged]

2genders30123 | 11 days ago

[flagged]

2genders42516 | 11 days ago

[flagged]

2genders21299 | 11 days ago

[flagged]

2genders36913 | 11 days ago

[flagged]

indianmilf30755 | 11 days ago

[flagged]

indianmilf25313 | 11 days ago

[flagged]

indianmilf48152 | 11 days ago

[flagged]

indianmilf38252 | 11 days ago

[flagged]

indianmilf36279 | 11 days ago

[flagged]

indianmilf15310 | 11 days ago

[flagged]

2genders8976 | 11 days ago

[flagged]

2genders42998 | 11 days ago

[flagged]

2genders38844 | 11 days ago

[flagged]

indianmilf36812 | 11 days ago

[flagged]

sexmc23466 | 11 days ago

[flagged]

2genders40018 | 11 days ago

[flagged]

2genders13057 | 11 days ago

[flagged]

2genders38654 | 11 days ago

[flagged]

2genders33730 | 11 days ago

[flagged]

2genders19317 | 11 days ago

[flagged]

2genders45275 | 11 days ago

[flagged]

2genders3638 | 11 days ago

[flagged]

SEXMCNIGGA24531 | 11 days ago

[flagged]

2genders9277 | 11 days ago

[flagged]

2genders24716 | 11 days ago

[flagged]

2genders20592 | 11 days ago

[flagged]

2genders31142 | 11 days ago

[flagged]

SEXMCNIGGA941 | 11 days ago

[flagged]

2genders42980 | 11 days ago

[flagged]

2genders25672 | 11 days ago

[flagged]

SEXMCNIGGA17999 | 11 days ago

[flagged]

2genders45922 | 11 days ago

[flagged]

2genders1261 | 11 days ago

[flagged]

2genders18 | 11 days ago

[flagged]

2genders28879 | 11 days ago

[flagged]

2genders20975 | 11 days ago

[dead]

2genders3253 | 11 days ago

[flagged]

SEXMCNIGGA16119 | 11 days ago

[dead]

SEXMCNIGGA30567 | 11 days ago

[flagged]

2genders2099 | 11 days ago

[flagged]

2genders42998 | 11 days ago

[flagged]

2genders18299 | 11 days ago

[flagged]

2genders10037 | 11 days ago

[flagged]

2genders816 | 11 days ago

[flagged]

2genders39646 | 11 days ago

[flagged]

2genders4244 | 11 days ago

[flagged]

2genders32700 | 11 days ago

[flagged]

2genders22374 | 11 days ago

[flagged]

2genders48513 | 11 days ago

[flagged]

2genders17435 | 11 days ago

[flagged]

2genders968 | 11 days ago

[flagged]

2genders43015 | 11 days ago

[flagged]

SEXMCNIGGA26515 | 11 days ago

[flagged]

SEXMCNIGGA19991 | 11 days ago

Useless trash. Imagine not using web components in 2024 and you still use tailwinds and stuff.

dankobgd | 11 days ago