3 पॉइंट द्वारा GN⁺ 6 시간 전 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • shadcn/ui जुलाई 2026 से नए प्रोजेक्ट्स और docs के डिफ़ॉल्ट flow को Base UI-केंद्रित बना रहा है, और 2023 में लॉन्च के बाद से चले आ रहे Radix डिफ़ॉल्ट से दिशा बदल रहा है
  • Base UI ने 1.6.0 stable version और साप्ताहिक 60 लाख से अधिक downloads हासिल किए हैं, और shadcn/create प्रोजेक्ट्स में भी इसे Radix की तुलना में 2:1 अनुपात में अधिक चुना जा रहा है
  • Radix को बंद नहीं किया जा रहा है, मौजूदा apps जैसे हैं वैसे रखे जा सकते हैं, और Base UI-केवल components को छोड़कर updates और नए components मिलते रहेंगे
  • migration codemod की बजाय agent skill के रूप में दिया जा रहा है, ताकि बदले हुए components और उनके usages को component-दर-component धीरे-धीरे migrate किया जा सके, और .migration/ report तथा git commit छोड़े जाएँ
  • chat UI components, GitHub repository-आधारित registry, shadcn eject, और नया style Rhea जुड़ने के साथ shadcn/ui का दायरा component वितरण और product UI निर्माण के पूरे क्षेत्र तक फैल रहा है

Base UI अब डिफ़ॉल्ट component library है

  • जुलाई 2026 से Base UI को shadcn/ui की डिफ़ॉल्ट component library के रूप में निर्धारित किया गया है
  • shadcn/ui जब जनवरी 2023 में लॉन्च हुआ था, तब यह Radix-आधारित था, और उस समय Radix unstyled headless components, API, accessibility, और real app उपयोग अनुभव वाला विकल्प था
  • Base UI उसी टीम द्वारा बनाई जा रही नई library है जिसने Radix बनाया था, और shadcn/ui ने अपनी मौजूदा abstraction बनाए रखते हुए सभी components को Base UI के लिए फिर से बनाया है
  • दिसंबर 2025 में npx shadcn create में दोनों libraries को चुनने की सुविधा दी गई थी, और जनवरी 2026 में Base UI docs पूरे किए गए

डिफ़ॉल्ट बदलने की वजह

  • Base UI की स्थिरता और उपयोग प्रवाह

    • Base UI version 1.6.0 है
    • साप्ताहिक downloads 60 लाख से अधिक हैं
    • Base UI टीम नियमित रूप से नए और उपयोगी components जारी करती है
    • shadcn/ui के नए projects Base UI का उपयोग कर रहे हैं
    • shadcn/create से बनने वाले projects में Base UI को Radix से 2:1 अनुपात में अधिक चुना जा रहा है
    • shadcn/ui इस चयन प्रवाह को आधिकारिक डिफ़ॉल्ट के रूप में अपना रहा है

नए projects और docs में क्या बदलेगा

  • नए project में npx shadcn init चलाने पर Base UI डिफ़ॉल्ट विकल्प होगा
  • shadcn/create पहले Base UI दिखाएगा
  • docs के component pages Base UI tab को डिफ़ॉल्ट रूप से खोलेंगे, और Radix docs एक क्लिक में उपलब्ध रहेंगे

Radix उपयोगकर्ताओं को क्या जानना चाहिए

  • Radix का समर्थन जारी रहेगा

    • shadcn/ui Radix support बनाए रखेगा
    • Base UI में ही मौजूद components को छोड़कर सभी updates और नए components दोनों libraries में दिए जाएँगे
    • मौजूदा apps को migrate करने की ज़रूरत नहीं है
    • Radix एक mature और tested library है
    • shadcn/ui खुद भी production में Radix का उपयोग जारी रखे हुए है, और अपने internal projects को भी migrate नहीं कर रहा है
    • अगर नए project में Radix पसंद हो, तो flag का उपयोग किया जा सकता है
    • अगर shadcn init को non-interactive script या CI में चलाया जाता है और Radix अपेक्षित है, तो पुराने path को बनाए रखने के लिए -b radix जोड़ना होगा
    • registry बनाते समय किसी खास library पर fix करना हो, तो registry:base setting दी जा सकती है
    • जिन items में यह setting नहीं है, वे अब Base UI से initialize होंगे
    • नए projects के लिए Base UI की सिफारिश की जाती है

Base UI में migration कैसे होगा

  • migration अनिवार्य नहीं है, लेकिन चाहें तो skill का उपयोग किया जा सकता है
  • coding agent से इस तरह अनुरोध किया जा सकता है
    • migrate accordion to base-ui
  • डिफ़ॉल्ट तरीका gradual migration है
    • components और usages को एक-एक करके migrate किया जाता है
    • project लगातार green और deployable स्थिति में बना रहता है
    • काम के दौरान दोनों libraries साथ मौजूद रह सकती हैं
    • बीच में रुककर बाद में फिर से जारी किया जा सकता है
    • चाहें तो पूरे project को एक बार में migrate करने के लिए भी कहा जा सकता है

codemod की जगह skill क्यों चुना गया

  • shadcn/ui components ऐसा code हैं जिनके मालिक उपयोगकर्ता खुद होते हैं और जिन्हें वे modify करते हैं, इसलिए codemod unmodified components पर तो ठीक हो सकता है, लेकिन बदले हुए components पर टूट सकता है
  • skill में name changes, prop changes, और behavior differences दोनों libraries के आधार पर manually reviewed रूप में शामिल हैं
  • agent उपयोगकर्ता द्वारा किए गए बदलावों को पहचानकर उन्हें migration target में भी लागू करता है
  • जो बदलाव mechanically किए जा सकते हैं, वे पूरे codebase में बदले जाते हैं
    • उदाहरण: asChild को render में बदला जाता है
  • behavior changes को चुपचाप patch नहीं किया जाता, बल्कि दिखाया जाता है, और अंतिम निर्णय उपयोगकर्ता का होता है

migration से क्या artifacts मिलते हैं

  • हर run तीन तरह के परिणाम छोड़ता है
    • काम करने वाला code: success report से पहले typecheck और build चलाए जाते हैं
    • component-wise report: project root के .migration/ में changes, वैसे ही छोड़े गए हिस्से, और manual verification checklist छोड़ी जाती है
    • साफ़ git history: branch पर हर component के लिए एक commit छोड़ा जाता है, और rollback के लिए branch हटाना काफी है
  • report का उदाहरण .migration/accordion.md है, जिसमें ये sections होते हैं
    • Changed
    • Left alone
    • Behavior changes
    • Verify by hand
  • बिना किसी hidden state के प्रगति files और git history में दर्ज रहती है, इसलिए किसी भी agent या session से काम आगे बढ़ाया जा सकता है
  • यह Claude Code, Cursor, और skill-supporting agents में काम करता है
  • एक वास्तविक project test में 60 से अधिक components में 36 Radix थे, पूरा migration लगभग 25 मिनट में हुआ, और प्रति component लगभग 10 हज़ार tokens लगे
  • build साफ़ तौर पर pass हुआ और customization बरकरार रहे

chat interface के लिए components जोड़े गए

  • जून 2026 में chat interface बनाने के लिए नए components जोड़े गए
  • पहला चरण conversation layer बनाने के मुख्य हिस्सों पर केंद्रित है
    • scroll
    • message rows
    • bubbles
    • attachments
    • markers
  • MessageScroller बातचीत के लिए scroll container है
    • anchored turns
    • streamed replies
    • saved thread restore
    • prepended history
    • jump-to-message
    • scroll controls
    • visibility tracking को संभालता है
  • MessageScroller messages, AI state, sending, saving, या model state का मालिक नहीं होता, और content renderer उपयोगकर्ता देता है
  • MessageScroller, @shadcn/react के unstyled headless component के रूप में भी उपलब्ध है

Message, Bubble, Attachment, Marker की भूमिकाएँ

  • Message बातचीत की एक row को व्यवस्थित करता है
    • avatar
    • alignment
    • header
    • content
    • footer
    • grouped messages को संभालता है
  • Bubble message surface render करता है
    • variants
    • alignment
    • reactions
    • links
    • buttons
    • collapsible content को support करता है
  • Attachment files और images render करता है
    • media
    • metadata
    • upload state
    • actions
    • अलग से clickable action बनाए रखते हुए full-card trigger देता है
  • Marker status updates, system notes, bordered rows, और labeled dividers render करता है
    • streaming state
    • tool activity
    • date breaks जैसे उपयोगों के लिए इस्तेमाल होता है
  • ये components छोटे आकार में डिज़ाइन किए गए हैं ताकि AI chat, support inbox, team thread, group chat, और product-specific conversation UI में मिलाकर उपयोग किए जा सकें

chat UI के लिए CSS utilities और @shadcn/react

  • दो नई CSS utilities जोड़ी गईं
    • scroll-fade: scroll container के किनारों पर scroll-awareness fade जोड़ता है
    • shimmer: "Thinking…", "Generating response…", tool execution, और streaming marker जैसे live-state text में shimmer जोड़ता है
  • दोनों utilities shadcn/tailwind.css में शामिल हैं
    • npx shadcn@latest init से initialize किए गए projects में ये पहले से शामिल हैं
  • @shadcn/react unstyled headless React components के लिए नया package है
    • इसका पहला primitive @shadcn/react/message-scroller है
    • registry components इसे shadcn/ui style में wrap करते हैं, लेकिन anchoring, auto-follow, prepend preservation, scroll commands, और visibility जैसे scroll behaviors package के भीतर रहते हैं
  • यह तरीका visual style से बँधे बिना behavior देता है, और कठिन interaction logic को एक ही जगह test करने देता है
  • यह Radix और Base UI दोनों में इस्तेमाल किया जा सकता है

AI Elements के साथ संबंध

  • नए chat components, AI Elements का स्थानापन्न नहीं हैं
  • AI Elements के AI interface components और patterns का उपयोग जारी रखा जा सकता है
  • इस release का फोकस chat के core pieces को एक-एक कर shadcn/ui में लाना है
  • अगर आप पहले से AI Elements components उपयोग कर रहे हैं, तो app को फिर से लिखने की ज़रूरत नहीं है
  • अगर आपको नई abstraction, updated styles, और Radix तथा Base UI दोनों का support चाहिए, तो shadcn/ui version आज़माया जा सकता है

GitHub repository को registry की तरह उपयोग करना

  • जून 2026 से public GitHub repository को registry की तरह उपयोग किया जा सकता है
  • repository root में registry.json जोड़कर और वितरित किए जाने वाले items define करके, उपयोगकर्ता shadcn CLI से सीधे GitHub से install कर सकते हैं
  • GitHub registry एक source registry है
    • shadcn build चलाने की ज़रूरत नहीं है
    • generated item JSON files publish करने की ज़रूरत नहीं है
    • registry server सेट करने की ज़रूरत नहीं है
  • CLI root में मौजूद registry.json पढ़ता है, include items को resolve करता है, और अनुरोधित item ढूँढकर संबंधित files install करता है
  • registry items केवल components तक सीमित नहीं हैं
    • components
    • hooks
    • utilities
    • design tokens
    • feature kits
    • project conventions
    • agent instructions
    • testing setup
    • CI workflows
    • release workflows
    • templates
    • codemods
    • migration kits
    • और अन्य project files वितरित किए जा सकते हैं
  • GitHub registry addresses वही commands में काम करते हैं जो मौजूदा registry addresses के लिए हैं
    • list
    • search
    • view
    • install

shadcn eject और shadcn/tailwind.css

  • Radix और Base UI दोनों को support करते हुए, उन shared Tailwind utilities के लिए एक जगह चाहिए थी जिन पर दोनों libraries निर्भर हैं
    • उदाहरण: data-open:, data-closed: जैसे custom variants
    • उदाहरण: no-scrollbar जैसी utility
  • RTL support के दौरान कुछ bugs भी हर component में दोहराकर लागू करने के बजाय एक जगह ठीक करना आसान था
  • इसी के लिए shadcn/tailwind.css बनाया गया
    • init चलाने पर global CSS file में @import "shadcn/tailwind.css" जोड़ दिया जाता है
    • यह tw-animate-css जैसे CSS import की तरह काम करता है
    • production में यह tree-shaken हो जाता है और build के समय resolve होने वाली छोटी dependency है
  • अगर shadcn package की CSS dependency नहीं चाहिए, तो shadcn eject का उपयोग किया जा सकता है
    • यह shadcn/tailwind.css को global CSS file में inline कर देता है
    • project से shadcn dependency हटा देता है
  • monorepo में command उसी workspace से चलानी होगी जहाँ components.json और global CSS file मौजूद हों

नया style Rhea

  • मई 2026 में नया shadcn/ui style Rhea जोड़ा गया
  • Rhea, Luma का अधिक compact रूप है, जिसमें spacing कम है और surfaces अधिक dense हैं, और इसे focused product interface के लिए बनाया गया है
  • Rhea, Luma की softness और shape बनाए रखते हुए buttons, inputs, menus, cards, और lists को अधिक कसाव के साथ व्यवस्थित करता है
  • Luma के --spacing को बदलने वाला तरीका नहीं चुना गया
    • --spacing एक multiplier है, इसलिए इसे बदलने पर पूरे app में p-2, w-4, m-16 जैसे परिचित Tailwind utilities का अर्थ बदल जाता
  • Rhea अलग style के रूप में दिया गया है, ताकि component size, gap, और density को सीधे समायोजित किया जा सके, जबकि underlying utility scale पूर्वानुमेय बना रहे
  • Rhea, shadcn/create में Radix और Base UI दोनों के लिए उपलब्ध है

1 टिप्पणियां

 
GN⁺ 6 시간 전
Hacker News की रायें
  • इस लेख में Claude वाली खास लेखन शैली काफी साफ दिखी, इसलिए अब यह थोड़ा थकाऊ और दूर-सा लगने लगा है
    अगर किसी महत्वपूर्ण product launch पोस्ट तक को इंसान के पूरी तरह ध्यान देने लायक नहीं माना जाता, तो समझ नहीं आता कि सीमा कहां खींची जाए

    • लेख ने जरूरी बातें असरदार ढंग से पहुंचाईं और ऐसा लगा कि उसे इंसान के पढ़ने लायक लिखा और संरचित किया गया है
      अगर AI से लिखवाकर इस बेहतरीन open source software के विकास पर ज्यादा समय दिया जा सका, तो मैं इसे उल्टा अच्छी बात मानता हूं
    • बिल्कुल समझ रहा हूं कि आप क्या कह रहे हैं। मैं Claude और plannotator का अक्सर इस्तेमाल करता हूं, और एक खास style guide मांगने के बाद यह काफी बेहतर हो गया
      “CD युग के MSDN reference और Raymond Chen blog style” को शुरुआती prompt बनाने से AI द्वारा बनाए गए plans को समझने की क्षमता काफी बढ़ गई; यह विनम्र, सूझ-बूझ वाला और पाठक का सम्मान करने वाला style है, इसलिए जोरदार सिफारिश करूंगा
    • मैंने लेख पढ़ा, लेकिन यह AI द्वारा लिखा हुआ जैसा नहीं लगा
      अगर team का कोई व्यक्ति सामने आकर कहे कि इसे इंसान ने लिखा है, तो थोड़ा मजेदार होगा
    • गंभीरता से पूछूं तो, यह इतना मायने क्यों रखता है? हो सकता है draft लिखने के बाद Claude की पंक्तियों की समीक्षा करके उसे publish किया गया हो
      AI जब भी काम में मदद करे, तो लोग उसे “पकड़ने” की कोशिश क्यों करते हैं, यह समझ नहीं आता; और यह कोई F500 कंपनी नहीं बल्कि open source project है। संसाधन भी सीमित होंगे और अंग्रेजी शायद उनकी मातृभाषा न हो
    • मुझे उल्टा नहीं लगता कि इसे थकाऊ कहकर टालना चाहिए। जिस तरह इसका इस्तेमाल और प्रस्तुति हो रही है, वह धोखे और झूठ के करीब है
      मेरा मानना है कि सहयोग की संस्कृति में भरोसा और सच्चाई जरूरी हैं, और मैं ऐसे लेख नहीं चाहता जहां AI झूठ बोले कि “मैंने किया/मैंने कहा”
      उदाहरण के लिए, अगर यह लेख वाकई Claude ने लिखा है, तो “I said”, “I meant it” जैसे वाक्यों से ऐसा दिखाने की जरूरत क्या है कि team का कोई इंसान सीधे बोल रहा है? यह impersonation है और भ्रामक है। अगर सहयोग और ईमानदारी की संस्कृति बचानी है, तो उसे “मेरे इंसान ने कहा” कहना चाहिए, या कम से कम यह ठीक से बताना चाहिए कि यह इंसान की ओर से काम कर रहा AI है
  • उबाऊ applications में लोग Mantine जैसी पारंपरिक UI libraries की बजाय shadcn के copy-paste तरीके को पसंद करते हैं या नहीं, यह जानने की उत्सुकता है
    copy-paste तरीका बदलने में आसान है, लेकिन नई समस्याएं भी लाता है। जिस काम के लिए बस version number बढ़ा देना चाहिए था, अब उसके लिए upgrade AI agent चाहिए हो जाता है

    • “बस version number बढ़ा देना” पिछले कुछ सालों में Material UI से पैदा हुई परेशानियों को बहुत कम आंकना है
      किसी उबाऊ app में नहीं, बल्कि एक बहुत बड़े app में, हर major version update पर API को काफी उलट-पुलट कर दिया जाता था, जिससे उबाऊ migrations करनी पड़ती थीं। shadcn पर आने के बाद single component upgrade करना और नए components आजादी से जोड़ना आसान हो गया। Material UI में कहीं भी नया feature इस्तेमाल करने के लिए पूरे को नए API के हिसाब से बदलना पड़ता था, लेकिन shadcn में यह चुनिंदा रूप से किया जा सकता है
    • copy-paste तरीका मुझे बिल्कुल समझ नहीं आया। Shadcn से बस trend वाली बू आती है, और खुद copy करके इस्तेमाल करने पर भी समझ नहीं आता कि इसमें इतना खास क्या है
      फिर भी अगर लोग इसका मजे से इस्तेमाल करते हैं तो ठीक है; AI का एक फायदा यह है कि HN अब पहले जितना JavaScript frameworks की बातों से अटका नहीं रहता
    • नए projects में मैं धीरे-धीरे vendoring की तरफ झुक रहा हूं
      बनी-बनाई UI library लाना short term में आसान होता है, लेकिन वे आम तौर पर जरूरत से ज्यादा जटिल होती हैं, उनमें वे features भी लागू होते हैं जिनका आप इस्तेमाल नहीं करते, उसी library का इस्तेमाल करने वाले अनगिनत apps से अलग दिखने की कोशिश में उन्हें बदलना मुश्किल होता है, और upgrade करते समय वे बदलाव सूक्ष्म तरीके से टूट जाते हैं। मेरे हिसाब से सबसे अच्छा तरीका अपनी UI library बनाना है। उसे खुद own करें, कई projects में reuse करें, चाहें तो वही visual style बनाए रखें, और सिर्फ जरूरी features जोड़ें
    • Mantine शानदार है। इससे लगभग कुछ भी तेजी से बनाया जा सकता है, और बाद में इसे extend किया जा सकता है या theme और individual components को पूरी तरह customize किया जा सकता है
      learning curve है, लेकिन मुझे नहीं लगता कि वह बहुत बड़ा है
    • कई systems में असल में “बस version number बढ़ाना” शायद ही कभी होता है। यह तभी संभव है जब component library ठीक वही करे जो आप चाहते हैं
      व्यवहार में अक्सर component पूरी तरह जरूरी behavior नहीं देता, और लोग component पर extra CSS अक्सर जोड़ देते हैं। अगर विकल्प कई घंटों का काम हो, तो CSS की दो lines बहुत आकर्षक लगती हैं, लेकिन उन दो lines को भी component library के हर नए feature के साथ verify करना पड़ता है। ऐसे CSS patchwork ज्यादा हो जाएं तो upgrade अपने-आप में एक project बन जाता है
  • इन popular UI toolkits में div को जरूरत से ज्यादा render करना खटकता है
    Base UI को देखने पर लगता है कि लगभग हर component “एक element render करता है” वाली शैली में है, जबकि accordion के लिए details/summary जैसे native elements हैं जो वही काम कर सकते हैं। मैं कोई native web evangelist नहीं हूं और मानता हूं कि web APIs, खासकर HTML, में भी काफी गलतियां हैं, लेकिन div का दुरुपयोग भी गलत है

  • मैंने Shadcn इस्तेमाल किया है और कुल मिलाकर पसंद है, लेकिन Radix आधारित radio buttons कुछ ज्यादा ही थे। इसी तरह जरूरत से ज्यादा फूला हुआ solution इस्तेमाल करने वाले select options भी हैं
    https://news.ycombinator.com/item?id=46688971

    • Shadcn और आजकल की ज्यादातर UI libraries से मेरी मुख्य शिकायत यह है कि वे शायद हजारवीं बार पहिया फिर से बना रही हैं
      एक side project में Ark UI आजमा रहा हूं, और tag input जैसे सचमुच उपयोगी components भी हैं: https://ark-ui.com/docs/components/tags-input
      tabs/“segment group” component में animated active indicator है, जिसे implement करना काफी मुश्किल हो सकता है: https://ark-ui.com/docs/components/segment-group
      लेकिन इसके साथ जरूरत से ज्यादा जटिल “click to copy” buttons या reimplementations भी हैं, और ये सभी verbose markup के साथ div soup render करते हैं: https://ark-ui.com/docs/components/clipboard, https://ark-ui.com/docs/components/collapsible
  • माइग्रेशन का काम codemod से LLM की ओर शिफ्ट होता दिख रहा है, यह दिलचस्प है
    codemod ज़्यादा deterministic तो होता है, लेकिन सोच रहा हूँ कि क्या उसका दौर खत्म होने लगा है

    • LLM का इस्तेमाल करके deterministic codemod बनाया जाए तो कैसा रहेगा
      फिर codemod चलाकर और दूसरे deterministic safety guards जोड़कर इसे दोहराया जा सकता है, और नतीजों को फिर से LLM में डालकर codemod को बेहतर किया जा सकता है
    • मूल लेख की framing खतरनाक सोच है। codemod खुद हो भी सकता है और नहीं भी
      जरूरत LLM के लिए skill file की नहीं, बल्कि इंसानों के लिए documentation की होनी चाहिए। इंसानों के लिए migration guide लिखनी चाहिए। आखिरकार यह समझने में थोड़ा समय लगेगा कि skill file और documentation एक ही चीज होनी चाहिए
    • यहाँ codemod से क्या मतलब है, यह जानना चाहूँगा
    • मुझे लगता है दोनों एक-दूसरे को पूरी तरह complement करते हैं और आगे भी करेंगे
      soft rules के लिए AGENTS.md file इस्तेमाल करते रहेंगे, और strong rules के लिए custom linter rules, मेरे हिसाब से यह दोनों worlds की खूबियाँ लेने का तरीका है
  • shad-CN इस्तेमाल करना चाहता हूँ, लेकिन हर बार अंत में Mantine पर ही लौट आता हूँ
    कौन-सा context जोड़ना है यह याद रखने से यह कहीं ज्यादा तेज है

  • सोच रहा हूँ कि क्या यह बदलाव users को bundle size कम होने जैसे बेहतर नतीजे देता है
    या यह Shadcn maintainers की quality of life बेहतर करने वाला बदलाव ज्यादा है

  • Angular में shadcn/ui के equivalent के तौर पर क्या है, यह जानना चाहूँगा
    PrimeNG ने हाल ही में license बदला है, इसलिए नए project के लिए सही alternative ढूँढ रहा हूँ

    • PrimeNG license change को HN पर लाने की दो कोशिशें[1] नाकाम रहीं, लेकिन अगर आप PrimeTek component libraries इस्तेमाल कर रहे हैं तो आपको इस बदलाव के बारे में पता होना चाहिए
      PrimeNG, PrimeReact, PrimeVue सभी पूरी तरह closed source में बदल रहे हैं, और 2027 से लगातार इस्तेमाल के license की कीमत प्रति developer seat 800 डॉलर होगी[2]। मौजूदा repositories archive कर दी गई हैं[3]। PrimeFaces open source बना रहेगा, लेकिन अब इसे PrimeTek employees नहीं, बल्कि independent volunteer developers develop और maintain करेंगे
      [1]: https://hn.algolia.com/?q=The+Next+Chapter+of+PrimeTek
      [2]: https://primeui.dev/nextchapter
      [3]: https://github.com/primefaces/primeng
    • वही स्थिति है। काम पर हमने कई apps में PrimeNG इस्तेमाल किया है, और जब तक कोई ठीक replacement नहीं मिल जाता, शायद Angular 21 पर ही अटके रहेंगे
      हालांकि एक group ने PrimeNG को fork किया है और उसे maintain करने की योजना है। नया नाम अभी तय नहीं है
      https://github.com/openng-org/open-prime
    • https://spartan.ng/
    • Shadcn जैसा system Svelte, Angular, Nunchucks जैसे कई stacks में सीधे इस्तेमाल के लिए अभी उपलब्ध नहीं है, इसी के जवाब में Lily Design System बना रहा हूँ
      यह पूरा free open source है, और feedback या suggestions भेजें तो उन्हें Lily में आसानी से जोड़ा जा सकता है
      https://lilydesignsystem.github.io
    • https://www.zardui.com
  • पुराने skeuomorphic style guides की याद आती है
    शायद आखिरी Blueprint था

  • URL https://ui.shadcn.com/docs/changelog/2026-07-base-ui-default होना चाहिए