Vanilla Extract

مكتبة CSS-in-TS بدون runtime (Zero-Runtime TypeScript CSS-in-JS)

(3/5)
👁️ 4 مشاهدة
📅 02 Jul 2026
⚛️ React 💚 Vue.js 🅰️ Angular 🧡 Svelte 🌐 عام

مستوى الخبرة المطلوب:

⚡ متوسط 🚀 محترف 🏢 مؤسسي
🔗 زيارة الموقع الرسمي
3
تقييم المستخدمين
التصنيف ✨ Styling
المشاهدات 4
تاريخ الإضافة 02/07/2026
آخر تحديث 02/07/2026

📖 الوصف

Vanilla Extract هي مكتبة CSS-in-JS مكتوبة بـ TypeScript وتعمل في build time (ليس runtime). تُحوّل TypeScript styles إلى ملفات CSS عادية. تقدم type safety كامل لـ CSS بدون runtime overhead. Vanilla Extract توفر API آمن من ناحية الأنواع مع support لـ CSS variables، dynamic values، وtheming. تُعتبر من...

🎯 يستخدم في

مجالات استخدام هذه الأداة

Applications تحتاج لأداء عالي

TypeScript-heavy projects

Zero-runtime CSS

Design systems مع type safety

SSR و static sites

المميزات

أبرز مميزات هذه الأداة

TypeScript support ممتاز

Zero runtime overhead

CSS variables مدمج

Theming system قوي

Framework-agnostic

Works مع React

Vue

Svelte

Type-safe styles

Small output

⚠️ العيوب

نقاط يجب مراعاتها

×

منحنى تعليمي

×

لا styled components pattern

×

Build setup قد يكون معقد

×

أقل شهرة من Styled-Components

×

TypeScript مطلوب

🔄 البدائل

أدوات بديلة يمكنك استخدامها

Linaria
Styled-Components
Emotion

💻 مثال على الاستخدام

كيفية استخدام هذه الأداة

Example Code
// styles.css.ts
import { style, globalStyle, createTheme } from '@vanilla-extract/css';

// Theme
export const lightTheme = createTheme({
  color: {
    primary: '#3498db',
    background: 'white',
    text: 'black',
  },
  spacing: {
    small: '8px',
    medium: '16px',
    large: '24px',
  },
});

// Styles (type-safe)
export const button = style({
  background: '#3498db',
  color: 'white',
  padding: '12px 24px',
  border: 'none',
  borderRadius: '4px',
  
  ':hover': {
    background: '#2980b9',
  },
});

export const primary = style({
  background: '#e74c3c',
});

// Global styles
globalStyle('body', {
  margin: 0,
  padding: 0,
  fontFamily: 'system-ui, sans-serif',
});

📚 أدوات أخرى في Styling

قد يعجبك أيضاً