--- name: unocss title: UnoCSS description: The instant on-demand atomic CSS engine icon: ⚡ tags: [css, atomic-css, unocss, tailwind] --- UnoCSS - The instant on-demand atomic CSS engine ### Configuration - Installation and basic setup → See [configuration](reference/configuration.md) - Custom rules and shortcuts → See [configuration](reference/configuration.md) - Theme configuration (colors, breakpoints, fonts) → See [configuration](reference/configuration.md) - Class writing order → See [configuration](reference/configuration.md) ### Presets - preset-uno, preset-mini, preset-wind → See [presets](reference/presets.md) - preset-icons for icon system → See [presets](reference/presets.md) - preset-attributify for attribute syntax → See [presets](reference/presets.md) - Custom presets → See [presets](reference/presets.md) ### Shortcuts & Transformers - Creating reusable shortcuts → See [shortcuts-transformers](reference/shortcuts-transformers.md) - Dynamic shortcuts → See [shortcuts-transformers](reference/shortcuts-transformers.md) - transformer-directives for @apply → See [shortcuts-transformers](reference/shortcuts-transformers.md) - transformer-variant-group → See [shortcuts-transformers](reference/shortcuts-transformers.md) ## Quick Start ```bash pnpm install -D unocss ``` ```ts // uno.config.ts import { defineConfig, presetUno, presetIcons, presetAttributify } from 'unocss' export default defineConfig({ presets: [ presetUno(), presetAttributify(), presetIcons({ scale: 1.2, cdn: 'https://esm.sh/' }), ], }) ``` ```ts // main.ts import 'virtual:uno.css' import { createApp } from 'vue' import App from './App.vue' createApp(App).mount('#app') ``` ## Key Features - **Instant**: No scanning, generate on-demand - **Flexible**: Fully customizable - **Powerful**: Built-in presets for common patterns - **Lightweight**: Only generate what you use - **Compatible**: Works with any framework ## Common Patterns ### Basic Classes ```html