prettier-plugin-tailwindcss
css-modules
prettier-plugin-tailwindcss | css-modules | |
---|---|---|
15 | 86 | |
4,779 | 17,391 | |
3.3% | 0.3% | |
8.2 | 5.2 | |
25 days ago | about 1 month ago | |
JavaScript | ||
MIT License | - |
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.
prettier-plugin-tailwindcss
-
Tailwind CSS for frontend teams: From settings to rules
Since this was a problem that many people had already encountered, there was already a solution. The first thing I found was Tailwind's official Prettier plugin, which ensures that class names are always ordered according to a certain rule. Best of all, it's auto-correcting, so I don't accidentally miss something or commit a different order.
-
Use TailwindCSS prefixes for shared design system components
It's not as if the correct order for the rules is mysterious. It's implemented in the Tailwind compiler. Tools like prettier-plugin-tailwindcss, which automatically sorts the class names in your HTML code to match the order in which Tailwind generates them in your CSS output, use a public API in Tailwind to get this order.
-
Tailwind CSS Tips and Tricks Worth Knowing
Other than that, you can get Prettier sorting your classes with the Tailwind Prettier plugin. And one more quality-of-life extension that might help your eye sores from a long list of classes is Tailwind Fold.
- Automatic Class Sorting with Tailwind and Prettier
-
How do you get the tailwindcss prettier plugin to work in electron-react-boilerplate?
I everyone. I am using Electron react boilerplate and I have successfully added tailwindcss to the project. However, I am struggling to get the Prettier plugin tailwindcss to work. I’ve tried following the instructions in the readme but no luck. I’ve tried moving my prettier.config.js to the .erc/config dir with no luck either.
-
Why is tailwind so hyped?
Others have already replied, but if you need to structure your TailwindCSS classes, I recommend their official Prettier plugin which integrates well into an ESLint setup.
- I've started breaking tailwind classes into multiple lines and feel like this is much easier to read than having all the classes on one line. Does anyone else do that? Any drawback to it?
-
Tailwind CSS v3.2 – Introducing Container Queries, Multiple Configs and More
> Except that I read that it's great for writing, but a nightmare for reading.
This is true at first. I can see it being pretty daunting to come into an existing project and trying to understand the styling of components. Starting from scratch and easing it into an existing project is much easier imo. That's what I did for a personal website. Now that I understand it and have converted the entire website to Tailwind, I don't want to switch to anything else going forward.
Here's a Prettier plugin that sort the classes to keep everything consistent across components: https://github.com/tailwindlabs/prettier-plugin-tailwindcss
Tailwind combined with classnames (https://github.com/JedWatson/classnames) makes it really easy to have conditional styling based on component state.
-
Fastest Frontend Tools in 2022
Despite the existence of Prettier, arguments about code style such as how to sort ES module imports still exist. Manually sorting ES modules wastes time, and usually leads to losing context when you are writing code and then have to navigate to the top of a file to modify your import statements. I love using the @trivago/prettier-plugin-sort-imports plugin which automatically sorts new imports, and works perfectly together with TypeScript's auto-import feature. Similarly, prettier-plugin-tailwindcss automatically sorts Tailwind classes in your code.
-
HyperUI Rewritten... What's Changed?
Added the tailwind-prettier-plugin as not everyone uses headwind
css-modules
-
Selectors for Humans, Hashes for Machines
One aspect of CSS modules that I truly appreciate is its ability to compress class names into very short hashes. This feature allows me to keep my CSS selectors as long and descriptive as needed, while still compressing them into concise three or four character hashes. It aligns with my rule for CSS: selectors should be written for human readability, but compressed for machine efficiency.
-
Architecture: Micro frontends
Use methodologies such as BEM, and technologies including CSS modules, CSS-in-JS, and Shadow DOM to isolate the styles of each micro-application and prevent conflicts, thus ensuring reliable encapsulation and modularity.
-
Use TailwindCSS prefixes for shared design system components
For many years, Culture Amp took the second option, and distributed shared components without compiled CSS. This meant that every app that consumed shared components needed to include the necessary CSS build tooling – at that time CSS Modules and node-sass – with a compatible version and configuration. This was relatively easy to set up, but over time proved difficult to maintain. When node-sass was deprecated in favour of (the much faster but slightly incompatible) Dart Sass, this demanded a difficult lock-step migration across all those codebases, which we have yet to achieve. And as new applications have switched to Tailwind for their own styles, they've had to continue to maintain those old build tools in parallel for the shared components' styles.
- I'm Writing CSS in 2024
-
CSS Modules Still a Thing?
So CSS modules are a form of 3rd-party CSS-in-JS, where what you import are the class names, which are then usually obfuscated etc at compile time, and all the actual style declarations are (usually) compiled into a single css file or tag as part of the bundling process. You can read the og docs on'em here, and you've probably seen'em used in React like:
import styles from "./styles.css"; function Example(){ return (
Hello
); }They predate the ability to import non-js files in vanilla by a good while, and rely on the compile process to translate your
.css
files into.js
files that can be imported using whichever loader you use in your bundler.Import assertions are a vanilla way to import non-js files by telling the browser how to import them;
assert { type: "css" }
says to treat the file as CSS and create aCSSStyleSheet
,assert { type: "json" }
says to treat the file as JSON and create a JSON object - and hopefullyassert { type: "html" }
will hopefully arrive soon and create a#document-fragment
or something similar.Hope that clears it up!
-
An Overview of 25+ UI Component Libraries in 2023
Extensions of CSS: for example, Sass, Less, Tailwind, CSS Modules, to make stuff look a certain way on your own.
-
Creating a Component Library Fast🚀(using Vite's library mode)
The components are styled with CSS modules. When building the library, these styles will get transformed to normal CSS style sheets. This means that the consuming application will not even be required to support CSS modules. (In the future I want to extend this tutorial to use vanilla-extract instead.)
-
All 7 ways to deal with CSS most never tried
NextJS comes with built-in support for CSS Modules which allows you to scope your styles locally in individual components without worrying about name collisions or messing up other parts of the codebase.
-
Vanilla+PostCSS as an Alternative to SCSS
CSS modules are not to be confused with mixins, as they serve the opposite purpose. While mixins are components or functions to be reused globally, modules are style sheets with a local scope used in a similar way as styled components in React.
-
The Future of CSS
CSS Modules CSS Modules is a pre-processing step: by default, styles are scoped locally to the current component, and the transpiler ensures no conflicts.
What are some alternatives?
headwind - An opinionated Tailwind CSS class sorter built for Visual Studio Code
emotion - 👩🎤 CSS-in-JS library designed for high performance style composition
eslint-plugin-tailwindcss - ESLint plugin for Tailwind CSS usage
esbuild-plugin-solid
Visual Studio Code - Visual Studio Code
stencil - A toolchain for building scalable, enterprise-ready component systems on top of TypeScript and Web Component standards. Stencil components can be distributed natively to React, Angular, Vue, and traditional web developers from a single, framework-agnostic codebase.
ESLint - Find and fix problems in your JavaScript code.
styled-components - Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
husky - Git hooks made easy 🐶 woof!
postcss-nested - PostCSS plugin to unwrap nested rules like how Sass does it.
prettier - Prettier is an opinionated code formatter.
@artsy/fresnel - An SSR compatible approach to CSS media query based responsive layouts for React.