Skip to content

Latest commit

History

History
112 lines (88 loc) 路 2.76 KB

README.md

File metadata and controls

112 lines (88 loc) 路 2.76 KB

鈿狅笍 Windi CSS is Sunsetting 鈿狅笍
We are sunsetting Windi CSS and we recommend new projects to seek for alternatives. Read the full blog post.


vite-plugin-windicss

Windi CSS for Vite, it's fast! 鈿★笍

Features

  • 鈿★笍 It's FAST - 20~100x times faster than Tailwind on Vite
  • 馃З On-demand CSS utilities (Fully compatible with Tailwind CSS v2)
  • 馃摝 On-demand native elements style reseting (preflight)
  • 馃敟 Hot module replacement (HMR)
  • 馃崈 Load configurations from tailwind.config.js
  • 馃 Framework-agnostic - Vue, React, Svelte and vanilla!
  • 馃搫 CSS @apply / @screen directives transforms (also works for Vue SFC's <style>)
  • 馃幊 Support Variant Groups - e.g. bg-gray-200 hover:(bg-gray-100 text-red-300)
  • 馃槑 "Design in Devtools" - if you work this way in the traditional Tailwind, no reason we can't!

Documentation

Read the documentation for more details.

New Features in v3.0

Enabled it by

// windi.config.ts
export default {
  attributify: true,
}

And use them as you would like:

<button 
  bg="blue-400 hover:blue-500 dark:blue-500 dark:hover:blue-600"
  text="sm white"
  font="mono light"
  p="y-2 x-4"
  border="2 rounded blue-200"
>
  Button
</button>

Prefix

If you are concerned about naming confliction, you can add custom prefix to attributify mode by:

// windi.config.ts
export default {
  attributify: {
    prefix: 'w:',
  },
}
<button 
  w:bg="blue-400 hover:blue-500 dark:blue-500 dark:hover:blue-600"
  w:text="sm white"
  w:font="mono light"
  w:p="y-2 x-4"
  w:border="2 rounded blue-200"
>
  Button
</button>
// windi.config.ts
export default {
  alias: {
    'hstack': 'flex items-center',
    'vstack': 'flex flex-col',
    'icon': 'w-6 h-6 fill-current',
    'app': 'text-red',
    'app-border': 'border-gray-200 dark:border-dark-300',
  },
}

Sponsors

License

MIT License 漏 2021 Anthony Fu