twind
The smallest, fastest, most feature complete Tailwind-in-JS solution in existence. (by tw-in-js)
twin.macro
🦹‍♂️ Twin blends the magic of Tailwind with the flexibility of css-in-js (emotion, styled-components, solid-styled-components, stitches and goober) at build time. (by ben-rogerson)
twind | twin.macro | |
---|---|---|
30 | 57 | |
3,845 | 8,002 | |
0.4% | 0.3% | |
8.5 | 5.9 | |
4 days ago | 12 months ago | |
JavaScript | TypeScript | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
twind
Posts with mentions or reviews of twind.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-16.
- Twind – Tailwind without build step
-
Why We're Breaking Up with CSS-in-JS
I think TW syntax is great as a CSS shorthand. I think it can be a great tool for making highly descriptive styles in a far more succinct fashion. I think if you you use Twind compiler and you store TW syntax outside of your templates/JSX and you just compile it down to descriptive class names, that's a great use of Tailwind. Then you get the advantage of meaningful names applied to elements in the template, and if you need to refactor/fix a style, then you can find it much easier. It also makes it a lot more dynamic, which standard Tailwind which can be a PITA to make dynamic (e.g. for dynamic behavior in Twind, you can have functions that generate TW style strings and use interpolated strings without having to worry about if the build-time TW compiler understands all the possibilities).
- Por que usar Deno Fresh como framework web?
-
What programming languages do you use the most?
But at least you like something. And I get why people like Tailwind, but I end up finding it constricting for behavior that results in dynamic styles. But I've tried Twind which is a runtime TW compiler and it fixes most of my complaints and it has the same SSR-ability like Stitches & Emotion.
-
Why CSS-in-JS?
The CSS-in-JS library solves problems of global nature of CSS and of specificity by providing scoping in a unique class-name. It has some cost attached to it i.e run-time which is being solved by order libs vanilla-extract-css. I'm a big fan of tailwind and I honestly believe it is enough for your project. If you also need dynamic styles then CSS-in-JS is better over tailwind, though there are solutions like twind which provide a flavor of tailwind with the CSS-in-JS approach they do have all cons of any CSS-in- JS libraries. I'm very excited about styles by Facebook and waiting for the day it will be open-sourced or CSS itself evolves to me provide scoping and be more modular, until that day comes I'm betting on CSS-in-JS with stitches and vanilla-extract-css.
-
Styling in Fresh
what framwork are you coming from? i honestly wouldn’t try fresh unless you are using tailwind - bootstrap components are jsx based, and fresh is based off islands architecture which would make integrating the two trickier since youd have to route through deno + the preact compat lib. if you really want to do it, read into this. that being said, tailwind is a very powerful tool. i use it daily in nearly every element on front end, and as someone who likes avoiding design as much as possible ive found tailwind (and twind) are extremely pleasant to work with since it’s mostly class/keyword based styling as opposed to css / sass / scss styling
-
Looking to compile tailwind from a string if it detects any tailwindcss classes in it
I want to do something similar with Remix to make a separate stylesheet per route with content coming from a CMS like WordPress. I’ve had my eye on Twind once they add compatibility with v3 and all the JIT stuff. https://twind.dev/
-
A quick review of the Fresh web framework
When initializing a new project, Fresh will also ask if you want to use Twind, which is a Tailwind-to-JS library. If you choose this option, then you will have the power of Tailwind without creating a config file or using PostCSS, which I thought is pretty cool.
- Twind: The smallest, fastest, most feature complete tailwind-in-JS solution
-
tailwind: no simple way to get started
Try https://twind.dev/
twin.macro
Posts with mentions or reviews of twin.macro.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-18.
-
Tailwindcss in Styled-Components
Twin Macro Github Repo. This is a great resource to help you pick up Twin’s syntax, learn more about the package, and keep up to date with the latest releases.
-
CSS Style Guide for Web Dev?
Personally I like twin.macro the most. It’s similar to the above but based on Tailwind.
-
Cool Tailwindcss Tools For Everyone
twin.macro is a library that allows you to use these styles in your JavaScript code. This library works exactly like styled-components.
- How do you css?
-
Fixing Class Composition in Tailwind CSS
One of the more promising alternatives is twin.macro - a Babel macro that processes Tailwind classes to generate JS objects understandable by various CSS-in-JS libraries. The developer experience (DX) of using it is amazing as you not only get all of Tailwind’s features without much change to your code, but you also get much more flexibility - all that on top of the traditional benefits of CSS-in-JS. Here’s an example code:
-
Setup Nextjs Tailwind CSS Styled Components with TypeScript
twin.macro
-
What unpopular webdev opinions do you have?
If you use Tailwind with React a lot, and are wanting support for Styled Components, give Twin Macro a look. They're close to finishing support for TW v3 in their Releases section :)
- Are utility classes horrible design or am I dumb?
- What's the proper way to write Tailwind with React?
-
Stailwc: an swc plugin for transpiling tailwind directives at compile time
The blocker for us using it is our use of an excellent library called twin.macro which is built against babel's transpilation APIs to parse tailwindcss directives at compile time so that they may be used with css-in-js libraries. This efficiently bundles your css so that you only ship the precise css you use. The problem is, it's all quite slow.
What are some alternatives?
When comparing twind and twin.macro you can also consider the following projects:
Tailwind CSS - A utility-first CSS framework for rapid UI development.
identity-obj-proxy - An identity object using ES6 proxies. Useful for mocking webpack imports like CSS Modules.
Bit - A build system for development of composable software.
tailwindcss-intellisense - Intelligent Tailwind CSS tooling for Visual Studio Code
tailwindcss-classnames - Functional typed classnames for TailwindCSS