If youโre not a fan of writing manual css then Tailwindcss can save you a lot of time.
And itโs beautiful. ๐
If youโre not a fan of writing manual css then Tailwindcss can save you a lot of time.
And itโs beautiful. ๐
For further actions, you may consider blocking this person and/or reporting abuse
Top comments (36)
I've become a big fan
Help me understand.
If someone doesn't want to write pure CSS, why would they use Tailwind CSS?
Why don't they just use a no-code tool like Webflow to build a complex website?
Because I feel like Tailwind CSS helps you work 10% faster, but it reduces your flexibility with maybe 60%.
But using some complex no-code website builder helps you work 90% faster, while reducing your flexibility with 60%.
And yes, I know writing code feels cool, we all like to feel like hackers, typing away in our dark terminals.
I'm just trying to understand from a productivity point of view.
Iโve started using WebFlow for my freelance clients and itโs been a nightmare. Iโve used other similar tools such as WordPress and Drupal and in my experience those tools lower both my flexibility and productivity. Also if I need something a bit more complex Iโm going to have to end up writing PHP or JS code anyways which takes even more time.
For me personally I use Tailwind more for the responsive styles so I save time by not having to write tons of media queries. I can also configure Tailwind to my liking which adds to its flexibility.
At first, I hated Tailwind CSS but over time fell in love with it! I use it in all my projects now.
Your boilerplaty verbose templates disagree ๐
I have a different take this Kausik ๐ค. I have used Tailwindcss, CSS3, MaterialUi, Bootstrap, Bulma and Storybook. Even I have tried the preprocessors of CSS like SASS/SCSS.
Let me share what I learned after so many projects ๐คซ. These frameworks and preprocessors are always useful when it comes to building any high end component like autocomplete dropdown or a calender. But if you use it on normal components, then don't use it.
It's just not worth it, it would always be overkilling a simple thing and very bad in terms of optimizations. So, if you are a good developer, then you will always know when you are overkilling a simple thing and when you are doing it in the easy way โ.
Then maybe you should take a try.
A class is a common set of property-value pairs that will be applied to every HTML tag with this class name inside it's class attribute whereas components define visual chunks of your views semantically.
A button will always be a button, right?
Using classes you usually end up with something like:
The btn class would be the basic styling for your buttons, btn-rounded would be a modifier and btn-warning would be a font/color definition.
(Of course you can use "btn rounded warning" but the intellisense will be angry).
Example with styled-components:
You can programatically or conditionally set values into it, even using states, and the Button component will host every possible definition so it's scoped in a single place.
Anytime you need to extend the button component you simply head yourself to the Button component file and that's all.
You can also import base templating configuration set on a JS const/variable, including breakpoint related things for those media queries and so on (break point naming related with pixel range, max-container width, item gap...)
... but then you learn CSS.
I saw other comments and I'd say this
I better write inline css then using tailwind.
BTW, i was one of those who used to use tailwind when it first came out few years ago. So ye don't think I'm saying it all just because i wanted to or by influencing from internet. It's how i genuinely feel
I'm a bit confused as you wrote that in another comment related to tailwind:
And every single point can be reached with regular css/Sass/Scss (that's what's behind Tailwind after all).
I always define the concepts when I feel it necessary, not specifically for you but for anyone who can reach that. This is a forum and not a 1 to 1 conversation.
I'm a Lead Dev/Tech Lead and don't get offended by any of this, thought we were taking into account that newbies can read that and get some basic knowledge about this topic.
If you think so, maybe I've not enough knowledge of Tailwind (used it only once in a tiny project to see what's that about -surface knowledge-) and you (as you said) have not enough knowledge about Styled-Components.
Would you like to do a little challenge? I can write a public repo with Next JS and styled-components using some public API, trying to include all available features and you can re-code a variant using Tailwind so we both get more knowledge of those techs while seeing the pros and cons of each.
I'm hands on 3 projects at once but I'm sure I can get some time. If you (or anyone reading this) feel like it's a good idea I'll put myself hands on asap. ๐๐ You name it.
That sounds like styled-components but with extra-steps.
A component should be as small as the minimum solution they need to provide, not more, not less.
The styles of the component should not, in any case, define how the component should be fragmented.
Even that, it does not make a template chunk les verbose when using Tailwind. It can be a verbose chunk among other verbose chunks or as stand-alone verbose chunk, with the HTML full o' class names like we're back at 1999 using inline styles. It is what it is, though you can like it or not.