Тёмный

shadcn/ui - Theming Wrapped in a Tailwind Plugin/Preset 

simonswiss
Подписаться 11 тыс.
Просмотров 48 тыс.
0% 0

Опубликовано:

 

27 авг 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 163   
@Stoney_Eagle
@Stoney_Eagle Год назад
I appreciate the dark mode ☺
@simonswiss
@simonswiss Год назад
Heh, I know you're not alone. The RU-vid comments told me wassup with light theme 🤣
@touctouctouctouc3440
@touctouctouctouc3440 Год назад
Just missing the transition slides using dark as well to avoid these flashes in the middle of the night. 😅
@dahermora5976
@dahermora5976 Год назад
Thanks for this master class on improving the shadcn/ui config. I truly apreciate your content, your effort and your work 💪
@simonswiss
@simonswiss Год назад
Thank you!
@MithilaMalinda
@MithilaMalinda 9 месяцев назад
I missed you dude. Thanks to your tutorials on official Tailwind channel, I'm now really confident in Tailwind
@simonswiss
@simonswiss 9 месяцев назад
Awwww, that's awesome to hear!
@amirnoorani5017
@amirnoorani5017 10 месяцев назад
The God of Tailwind 🤩 I've watched most of your tutorials. Although they are professional but I can understand every bit of them
@simonswiss
@simonswiss 10 месяцев назад
That's really nice to hear - thank you! 😍
@Hellbending
@Hellbending Год назад
The level of appreciation I have for creators that make this type of content where they show the whole process, from start to finish like when things break, so as not to freak out about it. And then how to actually fix it is so so so appreciated man. Keep it real 💪
@simonswiss
@simonswiss Год назад
Thank you! I do freak out internally when stuff doesn't go as it should while streaming/recording - but you're right, this is where a lot of the value is!
@Hellbending
@Hellbending Год назад
@@simonswiss relatable content can be hard to find online (as a whole) so it’s really nice to see the pivots and the “Whoooops… okay… how2fix this” type thing. Always give props to people that have the confidence to shows/demonstrate it. (Also speaks volumes for the audience you have, as it likely means you’ve got a positive community here)
@thegrumpydeveloper
@thegrumpydeveloper 8 месяцев назад
I like that you call it being “nerdsniped” when you get hit doing something else nerdy to procrastinate the thing you were intending to do.
@nikhil182
@nikhil182 Год назад
I've personally used shadcn/ui for my website, it's awesome! Your tutorial is cherry on top, I'll make the components more reusable with this tutorial. Thank you so much Simon✨
@simonswiss
@simonswiss Год назад
Haha that's amazing to hear! Glad it's useful. I am yet to use shadcn/ui in a project, but I already see the value and love it 🎉
@ukeshrestha
@ukeshrestha Год назад
Thank you so much for this video. Your tailwind course was awesome and now this is cherry on top.
@simonswiss
@simonswiss Год назад
Thank you for saying this! And thank you for your support of my course! Hoping to continue adding cherries on top 🙏
@Lucas-gt8en
@Lucas-gt8en Год назад
Very useful information presented in an engaging manner, you’re killing it dude
@simonswiss
@simonswiss Год назад
Thank you so much - such a nice thing to say!
@michaeltyiska
@michaeltyiska 5 месяцев назад
This is pure Gold! You should definitely have more views and subscribers.
@simonswiss
@simonswiss 4 месяца назад
Wow, thank you! I need to be more consistent with my video output as well 😅
@FamilyGuyVids11
@FamilyGuyVids11 Месяц назад
great video and great channel
@simonswiss
@simonswiss Месяц назад
Thank you! 🙏
@Humpty0Dumpty
@Humpty0Dumpty Год назад
Right on time, it’s almost like you custom made this video4Me! Thankyou bro❤
@simonswiss
@simonswiss Год назад
Haha glad I could read your mind!
Год назад
Cool! This will be my new Tailwind Boilerplate :)
@thisisfaaris5838
@thisisfaaris5838 Год назад
it's awesome! Thank you so much Simon 👍
@simonswiss
@simonswiss Год назад
Glad you like it! 🤗
@navin-moorthy
@navin-moorthy Год назад
Very useful in making it reusable.
@simonswiss
@simonswiss Год назад
It sure is - and also opens up so many possibilities with JavaScript!
@lucasfranzolin
@lucasfranzolin Год назад
I missed your videos my friend!! Very useful content for my turborepo! It would be nice if could teach us an approach for setting up a monorepo with shadcn, custom twcss plugins, ui packages and applications... all sharing same ui resources!!
@simonswiss
@simonswiss Год назад
That is basically the topic of my next workshop! 👀
@simonswiss
@simonswiss Год назад
Not sure if you're on Twitter, but check this tweet out. I played with the idea, and it worked brilliantly :) twitter.com/simonswiss/status/1669489669795614721
@LuisPerez-cb4rp
@LuisPerez-cb4rp Год назад
I love this so much. I have been struggling in how to do something similar to this 🙏🏼 thank you
@simonswiss
@simonswiss Год назад
Nice to hear it helps! ✨
@zbecknell
@zbecknell Год назад
An excellent video, as always! I see Simon, I know it's a "thumbs up!"
@simonswiss
@simonswiss Год назад
Ayyyye, thank you so much! 🙏
@psyferinc.3573
@psyferinc.3573 7 месяцев назад
as always. epicccc
@simonswiss
@simonswiss 7 месяцев назад
@therubberduckie2244
@therubberduckie2244 Год назад
this is beyond amazing
@simonswiss
@simonswiss Год назад
Glad you found it helpful!
@anirudhcodes
@anirudhcodes Год назад
Thanks for the video, really like your explanation
@simonswiss
@simonswiss Год назад
Awesome, thanks for watching! 🙏
@koralior
@koralior Год назад
Excellent video, as always! It's interesting, especially when working with a mono-repo. Maybe I should create an ultimate Nx plugin to generate this on my apps :D
@simonswiss
@simonswiss Год назад
Yeah - the preset in question could (should) be a package in your monorepo, so you can import it in multiple apps ✨ Haven't used Nx myself, but it works great with Turborepo or even just npm workspaces 👍
@c3ltic1
@c3ltic1 10 месяцев назад
really cool video :)
@simonswiss
@simonswiss 10 месяцев назад
Glad you liked it!
@microspacer
@microspacer Год назад
French accent just makes it better
@simonswiss
@simonswiss Год назад
Zis is ze best comment in ze world
@microspacer
@microspacer Год назад
@@simonswiss I'm sorry. I don't know what I am saying
@paulopma
@paulopma Год назад
Nice video, thx for the tips. I didn't get the hsl colors shadcn/ui uses. I never coded a design putting colors like: "oh this is pinky, this is redish, this is greenish". No, the designers always want you to put the specific hex.
@vigneshs608
@vigneshs608 Год назад
Awesome stuff, Can you please make the video for cva
@simonswiss
@simonswiss Год назад
I am still in the process of moving into my new house and setting up the home office, but I shoudl do this video once I am set up!
@good-dev-student
@good-dev-student Год назад
You are really good 🎉❤
@simonswiss
@simonswiss Год назад
Thank you! ✨
@tommyjames427
@tommyjames427 7 месяцев назад
<a href="#" class="seekto" data-time="1044">17:24</a> How to add @apply in TailwindCSS Config (workaround)
@simonswiss
@simonswiss 7 месяцев назад
Yep that's a good trick!
@AhmadAwais
@AhmadAwais Год назад
Hey nice video. I personally don't enjoy writing CSS in JS Objects format. Wish there was a CSX like JSX that acted and felt like CSS, same syntax. That's why I don't go creating TW Plugins.
@themarksmith
@themarksmith Год назад
Love your vids!
@simonswiss
@simonswiss Год назад
Thank you!
@arifurrahman9133
@arifurrahman9133 Год назад
Hi simon,thank for vedio
@simonswiss
@simonswiss Год назад
You're very welcome!
@redwansikder3847
@redwansikder3847 7 месяцев назад
Gems.
@divx976
@divx976 Год назад
Superbe vidéo 👍
@simonswiss
@simonswiss Год назад
Merci beaucoup - superbe commentaire 🙏
@BarisPalabiyik
@BarisPalabiyik Год назад
You can use chrome's color picker to get hsl values of whatever color you want. Takes out the guesswork.
@simonswiss
@simonswiss Год назад
Yep good point. Guessing game is fun though 😅
@Stoney_Eagle
@Stoney_Eagle Год назад
You can also temporarily make it a valid HSL value so the editor gives you a color picker and then turn it back into numbers 😉
@simonswiss
@simonswiss Год назад
@@Stoney_Eagle very clever!
@DioArsya
@DioArsya Год назад
ah, amazing!
@simonswiss
@simonswiss Год назад
Yeah it's pretty cool ✨
@MyExpByMinHtetKo
@MyExpByMinHtetKo Год назад
I like shadcn and your video. I create a new laravel project and install tailwind css and create components using shadcn and base color for "slate". And I changed theme primary color to desired custom HSL value from "coolors" color palette website in css variable. And primary color changed for button. But primary color not working for button hover effect. Please someone help me.
@simonswiss
@simonswiss Год назад
Do you have some code to show? Link to a repo?
@OnlyJavascript
@OnlyJavascript Год назад
wow, this is very clean. thank you so much Simon.
@simonswiss
@simonswiss Год назад
You're very welcome!
@w00t360
@w00t360 9 месяцев назад
Did you figure out the nested plugin section issue thing? I'm supercurious about the root cause and possible "proper" fix! Thanks for all the great vidz!
@doyaltv2030
@doyaltv2030 Год назад
Hello, i from bangladesh i love it your video
@simonswiss
@simonswiss Год назад
Hello, friend! 👋 I am glad you enjoy my videos! ✨
@Shubham-yc6nz
@Shubham-yc6nz Год назад
Thanks a lot. Got much understanding on shadcn and theming also some tailwind stuff. Could you make a ecommerce ui using shadcn? With custom theme/modifications to shadcn😊
@stanislavvranic1745
@stanislavvranic1745 11 месяцев назад
How we add css className next to the buttonVariants({ variant: "outline"})? it's on <a href="#" class="seekto" data-time="580">9:40</a>
@simonswiss
@simonswiss 11 месяцев назад
You can use the cn() function provided by shadcn/ui - it uses Tailwind Merge internally :) github.com/shadcn-ui/ui/blob/main/templates/next-template/lib/utils.ts#L4-L6
@alkhamistic
@alkhamistic Год назад
love your vids. Are you able to do a video on your recording and editing process?
@simonswiss
@simonswiss Год назад
That's a good idea! I write a bit about it on betterdevscreencasts.com - but making a video is a good idea!
@jereMIAHjoSEPH
@jereMIAHjoSEPH Год назад
Very helpful. Thanks Simon. Sidebar: what browser are you using?
@simonswiss
@simonswiss Год назад
Thank you! I am using the ARC browser - it's really good!
@0xmic
@0xmic Год назад
For some reason at <a href="#" class="seekto" data-time="695">11:35</a> I'm getting an error in VSCode under `'tailwindcss-animate'` in the updated import line. For some reason it's not picking up from my node_modules. Any guesses? Appreciate any help. 🙏
@simonswiss
@simonswiss Год назад
Hmmmm I remember seeing something like that once too - and I think I was able to resolve it by adding a .d.ts file with "declare module". The error/warning should tell you about it.
@whyrulikedis8248
@whyrulikedis8248 Год назад
add "declare module 'tailwindcss-animate';" to global.d.ts in root folder
@simonswiss
@simonswiss Год назад
Yes, that seems to solve this issue (and it's what the error modal suggests) @@whyrulikedis8248
@sergeykostik1887
@sergeykostik1887 Год назад
didn't work for me. gives an error message "Error: Cannot find module"
@simonswiss
@simonswiss Год назад
At what point?
@buildtheui
@buildtheui Год назад
Nice video, Simon! What is the reason for creating a plugin instead of doing everything inside the preset, considering that the preset can also be reused across projects?
@simonswiss
@simonswiss Год назад
Do you mean defining the plugin inside the preset directly? Still need the `addBase` helper from the Plugin API to generate the CSS variable declarations..
@hakuna_matata_hakuna
@hakuna_matata_hakuna 2 месяца назад
i made one that merges a daiyui theme into the variables
@simonswiss
@simonswiss Месяц назад
Haha nice one, that's awesome!
@ekopurnomo9221
@ekopurnomo9221 Год назад
thank u, very usefull
@simonswiss
@simonswiss 8 месяцев назад
You are welcome :)
@wingy3181
@wingy3181 Год назад
Would you create different presets for different themes? but i'm thinking you would need to create a separate plugin for each theme then which doesn't seem very DRY and ideal to me....... in short goal would be to have different presets for different themes and that is all you would need to figure in the consuming application
@simonswiss
@simonswiss Год назад
Nope - I would have the theme plugin accept a theme object with multiple keys (each supporting light and dark). And then create theme scopes to redefine the CSS variables based on the theme. One plugin for all themes. Checkout protailwind.com/workshops/multi-theme-strategy - this is what we do in that workshop (without the dark/light mode) 👍
@thevasupodcast4561
@thevasupodcast4561 Год назад
Can you link to the blog you showed in the beginning. Thank you!
@simonswiss
@simonswiss Год назад
What blog post do you mean? I show the shadcn/ui docs website (introduction page) at the beginning. Or do you mean something else?
@basavarajpatil9821
@basavarajpatil9821 Год назад
I liked the font that you used in your code editor. Can anyone share the font name please.
@jereMIAHjoSEPH
@jereMIAHjoSEPH Год назад
Dank Mono
@simonswiss
@simonswiss Год назад
@@jereMIAHjoSEPH Yep, correct - Dank Mono it is!
@GauravDLohar
@GauravDLohar Год назад
Good video✨✨✨ would you tail me which theme do you using in vscode and font??
@simonswiss
@simonswiss Год назад
I'm using Dank Mono as a font, and Nigh Owl as a theme 👍
@brianronin505
@brianronin505 Год назад
pra mim não funcionou 🤔 ai eu fiz isso: addBase({ '*': { 'border-color': 'hsla(var(--border))', }, body: { background: 'hsla(var(--background))', color: 'hsla(var(--foreground))', // '@apply bg-background text-foreground': // {}, }, })
@naveeng2003
@naveeng2003 Год назад
Can we expect a video on cva vs tailwind variants
@simonswiss
@simonswiss Год назад
I feel like Tailwind Variants builds on CVA and adds a bit extra functionality? CVA definitely gets a shoutout in the README. I don't thinks a "vs" video will happen - but I might do a video for each library!
@good-dev-student
@good-dev-student Год назад
You are awesome 😎
@roylesly9782
@roylesly9782 9 месяцев назад
Waoooooo Waoooo and Waooooooo
@simonswiss
@simonswiss 9 месяцев назад
Wooooooohaaaaaa
@yolla_4
@yolla_4 11 месяцев назад
what font are you using in your vs code?
@simonswiss
@simonswiss 8 месяцев назад
It's called Dank Mono!
@alexpanteli3651
@alexpanteli3651 Год назад
When I modify tailwind config and thete is some error, next.js crashes. Each time I need to restart server. How do I make it work without having to restart next.js server?
@simonswiss
@simonswiss Год назад
Hmmm I don't think you can! I had to restart my server in the video too - I just hid that to not make the video any longer than it is 😅
@alexpanteli3651
@alexpanteli3651 Год назад
@@simonswiss oh I see. Thanks.
@debtmoneydanger
@debtmoneydanger 9 месяцев назад
Thank you, this is amazing! Any thoughts on how this encapsulated plugin might be used in a Storybook setup? I'm especially wondering about the Storybook preview file that needs the css file imported in? It would now be in the plugin.
@simonswiss
@simonswiss 9 месяцев назад
The plugin injects the styles in the CSS file, so... I _think_ that importing that CSS file in the Storybook preview file should just work 👍
@m__link6499
@m__link6499 Год назад
I don’t why when I add shadcn in my Next js project, tailwind doesn’t work anymore … Do you know the things to do for handle this sue please? Thank you for your content …
@simonswiss
@simonswiss Год назад
Perhaps a wrong setting in your content array in the config file? Got a repo to have a look at?
@OnlyJavascript
@OnlyJavascript Год назад
Can you please teach us how to fix positioning the navigation menu drop-down(shadcn).
@cb73
@cb73 Год назад
I created a plugin called inception and imported it into itself. I think I created a black hole.
@simonswiss
@simonswiss Год назад
🤣🤣🤣
@WebsiteDevelopment-Uk
@WebsiteDevelopment-Uk Год назад
Impossible to use tailwind in visual studio code as installation is a nightmare. New install video step by step request....
@simonswiss
@simonswiss Год назад
What part is a nightmare? What can't you use? Tailwind intellisense not working?
@sravansuresh7460
@sravansuresh7460 Год назад
@simonswiss
@simonswiss Год назад
❤❤❤
@mohitpaddhariya
@mohitpaddhariya Год назад
which font you use in your ide please tell me I want that it is my humble request to you sir.
@simonswiss
@simonswiss Год назад
Dank Mono!
@mohitpaddhariya
@mohitpaddhariya Год назад
@@simonswiss thank you very much sir.
@cyberstarcritic
@cyberstarcritic Год назад
Can i use this as boilterplate to my projexcts
@mkroven
@mkroven Год назад
great explaination, what about react server components, css in js is a nightmare in nextjs 13+.
@simonswiss
@simonswiss Год назад
You write CSS-in-JS in a plugin, but what gets spat out is "regular" CSS. It's all just CSS and should work no problem on server (and client) components 👍
@jayantrohila
@jayantrohila Год назад
where to get this plugin
@owenvey
@owenvey Год назад
Awesome video! Do you by chance have the final code uploaded anywhere?
@simonswiss
@simonswiss Год назад
I don't right now, but I'll put this in a public repo and share the link!
@joscript7846
@joscript7846 Год назад
What font u using?
@simonswiss
@simonswiss Год назад
Dank Mono 🤙
@phantazzor
@phantazzor Год назад
merci
@simonswiss
@simonswiss Год назад
De rien! 🤙
@phantazzor
@phantazzor Год назад
​ @Simonswissdev pour un niveau pour un niveau intermédiaire comme moi, j'ai pas trop compris l'utilisation même si tu l'a expliqué oralement. J'ai essayé récemment de faire un truc similaire avec Shadcn et Daisy UI dans le même projet et la tu me donne l'étape d'après, juste le fait que ca soit au même endroit
@mazwrld
@mazwrld Год назад
why have I not subbed until now???
@simonswiss
@simonswiss Год назад
I am glad you did now! ❤️
@shakapaker
@shakapaker Год назад
Is it hard to rent a house and become resident of Bangladesh?
@simonswiss
@simonswiss Год назад
I wouldn't know!
@knowmoredesign
@knowmoredesign 6 месяцев назад
"calm down copilot" 😅
@simonswiss
@simonswiss 6 месяцев назад
🤣 I say this so often 🤣
@EL_PANDA_742
@EL_PANDA_742 Год назад
so that's only for react, not pure.
@simonswiss
@simonswiss Год назад
Yeah, that's not going to work in any environment where Tailwind CSS works, unfortunately.
@AndersonSousa33
@AndersonSousa33 Год назад
I got curious about the "fontFamily" that you're setting in this file.
@simonswiss
@simonswiss Год назад
Do you have a specific question about it?
@AndersonSousa33
@AndersonSousa33 Год назад
@@simonswiss Are you using it to specify another font family or something else? I've seen there is a var(--font ), but I haven't seen any var in the css file
@alexpanteli3651
@alexpanteli3651 Год назад
Simon you have such a great content and yet very few subsribers. Why is that?
@simonswiss
@simonswiss Год назад
Because I only "recently" started doing stuff on my channel - I poured my heart on the Tailwind Labs channel before that!
@alexpanteli3651
@alexpanteli3651 Год назад
@@simonswiss gotcha. Best of luck with your channel and keep it up
@simonswiss
@simonswiss Год назад
@@alexpanteli3651 Thank you - it's been fun creatring videos and engaging with the comments ✨
@Al-Misanthropic-Bundy
@Al-Misanthropic-Bundy Год назад
HSL ftw
@simonswiss
@simonswiss Год назад
OKLCH will probably be the way, takes the best bits of HSL but into the wider color spectrum 🔥
@alexpanteli3651
@alexpanteli3651 Год назад
Alway keep spelling it as shad CDN 😂😂
@simonswiss
@simonswiss Год назад
I was convinced it was that and said it "shad CDN" for a whole week!
@matt3441
@matt3441 6 месяцев назад
Was anyone able to get this working with Remix? This doesn't seem to work in the remix root.tsx file: import stylesheet from '@/styles/globals.css' export const links: LinksFunction = () => [ { rel: "stylesheet", href: stylesheet }, ]; Will result in the following error: ✘ [ERROR] Build failed with 1 error: error: Cannot find module '@/styles/shadcn-presets' Require stack: - /frontend/tailwind.config.ts [plugin css-file] app/root.tsx:<a href="#" class="seekto" data-time="1294">21:34</a>: 21 │ import stylesheet from '@/styles/globals.css'; ╵ ~~~~~~~~~~~~~~~~~~~~~~~ This error came from the "onLoad" callback registered here: ../../node_modules/.pnpm/@remix-run+dev@2.6.0_@remix-run+serve@2.6.0_typescript@5.3.3/node_modules/@remix-run/dev/dist/compiler/plugins/cssImports.js:7<a href="#" class="seekto" data-time="432">7:12</a>: 77 │ build.onLoad({ ╵ ~~~~~~
Далее
Tailwind-Merge Is Incredibly Useful - And Here's Why!
12:58
Only I get to bully my sister 😤
00:27
Просмотров 36 млн
Tailwind V4 Is Bigger Than Expected 👀
20:07
Просмотров 121 тыс.
Shadcn UI Crash Course #5 - Colour Themes
3:35
Просмотров 24 тыс.
cn() - Every Tailwind Coder Needs It (clsx + twMerge)
7:46
I WISH I Knew These Tailwind Tips Earlier
9:15
Просмотров 183 тыс.
These New Components Blew My Mind
7:06
Просмотров 90 тыс.
This UI component library is mind-blowing
8:23
Просмотров 654 тыс.
Svelte UI Libraries Have Leveled Up
12:14
Просмотров 58 тыс.