setup-tailwind-typescript
О программе
Этот навык настраивает Tailwind CSS и TypeScript в существующих проектах Next.js или Node.js. Он выполняет установку, настройку PostCSS, строгие параметры TypeScript, алиасы путей и интеграцию со средой разработки. Используйте его при добавлении Tailwind/TypeScript в проект или перенастройке после обновления фреймворка.
Быстрая установка
Claude Code
Рекомендуетсяnpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/setup-tailwind-typescriptСкопируйте и вставьте эту команду в Claude Code для установки этого навыка
Документация
name: setup-tailwind-typescript description: > Tailwind CSS und TypeScript in einem bestehenden Next.js- oder Node.js-Projekt konfigurieren. Behandelt Installation, PostCSS-Setup, TypeScript-Strenge-Einstellungen, Pfad-Aliase und IDE-Integration. Verwenden, wenn Tailwind/TypeScript zu einem vorhandenen Projekt hinzugefügt werden soll oder wenn die Konfiguration nach einem Framework-Upgrade neu eingerichtet werden muss. license: MIT locale: de source_locale: en source_commit: 6f65f316 translator: claude-opus-4-6 translation_date: 2026-03-16 allowed-tools: Read Write Edit Bash Grep Glob metadata: author: Philipp Thoss version: "1.0" domain: web-dev complexity: basic language: TypeScript tags: tailwind, typescript, nextjs, postcss, configuration
Tailwind CSS + TypeScript einrichten
Tailwind CSS und TypeScript in einem bestehenden Webprojekt konfigurieren, mit korrektem PostCSS-Setup und IDE-Integration.
Wann verwenden
- Tailwind CSS zu einem vorhandenen Next.js- oder React-Projekt hinzufügen
- TypeScript-Konfiguration in einem bestehenden JavaScript-Projekt einrichten
- Beides nach einem Framework-Upgrade neu konfigurieren
- Pfad-Aliase und IDE-Unterstützung für ein Projekt einrichten
Eingaben
- Erforderlich: Vorhandenes Node.js-Projekt mit
package.json - Optional: Framework (Next.js, Vite, Create React App — beeinflusst Konfigurationsdetails)
- Optional: TypeScript-Strenge-Level (strict, empfohlen, minimal)
- Optional: Ob Pfad-Aliase eingerichtet werden sollen (Standard: ja)
Vorgehensweise
Schritt 1: Tailwind CSS installieren
Tailwind und seine Peer-Dependencies installieren.
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p
Dies erstellt:
tailwind.config.js(oder.tsfür TypeScript-Projekte)postcss.config.js
Für TypeScript-Projekte den Konfigurationstyp aktualisieren:
# tailwind.config.js in tailwind.config.ts umbenennen
mv tailwind.config.js tailwind.config.ts
Erwartet: tailwind.config.ts und postcss.config.js in Projektroot erstellt.
Bei Fehler: Wenn npx tailwindcss fehlschlägt, mit npm install -D tailwindcss@latest die neueste Version sicherstellen.
Schritt 2: Tailwind konfigurieren
tailwind.config.ts bearbeiten, um alle Template-Dateien einzuschließen.
// tailwind.config.ts
import type { Config } from 'tailwindcss'
const config: Config = {
content: [
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
],
theme: {
extend: {
// Eigene Design-Tokens hier hinzufügen
colors: {
brand: {
50: '#f0f9ff',
500: '#0ea5e9',
900: '#0c4a6e',
},
},
},
},
plugins: [],
}
export default config
Erwartet: content-Array enthält alle Quell-Dateipfade. TypeScript erkennt Konfigurationstypen ohne Fehler.
Bei Fehler: Wenn Klassen nicht angewendet werden, überprüfen, dass content-Pfade mit der tatsächlichen Dateistruktur übereinstimmen. npx tailwindcss --content './src/**/*.tsx' --output /dev/null zum Testen verwenden.
Schritt 3: Tailwind-Direktiven zu CSS hinzufügen
Die Tailwind-Schicht-Direktiven in die globale CSS-Datei einfügen.
/* src/app/globals.css oder src/styles/globals.css */
@tailwind base;
@tailwind components;
@tailwind utilities;
/* Eigene Basis-Styles darunter */
@layer base {
h1 {
@apply text-2xl font-bold;
}
}
@layer components {
.btn-primary {
@apply px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600;
}
}
Erwartet: CSS-Datei hat alle drei @tailwind-Direktiven. Benutzerdefinierte Layer-Definitionen kompilieren ohne Fehler.
Bei Fehler: Wenn @tailwind-Direktiven nicht erkannt werden, sicherstellen, dass PostCSS korrekt konfiguriert ist und tailwindcss im plugins-Array in postcss.config.js steht.
Schritt 4: TypeScript konfigurieren
tsconfig.json mit geeigneten Strenge-Einstellungen und Pfad-Aliasen einrichten.
{
"compilerOptions": {
"target": "ES2017",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
"incremental": true,
"plugins": [
{
"name": "next"
}
],
"paths": {
"@/*": ["./src/*"],
"@/components/*": ["./src/components/*"],
"@/lib/*": ["./src/lib/*"],
"@/types/*": ["./src/types/*"]
}
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
"exclude": ["node_modules"]
}
Erwartet: tsconfig.json wird von TypeScript ohne Fehler geladen. Pfad-Aliase lösen korrekt auf.
Bei Fehler: Wenn moduleResolution: "bundler" Fehler verursacht (benötigt TypeScript 5.0+), auf "node16" oder "node" zurückfallen.
Schritt 5: VS Code-Integration einrichten
.vscode/settings.json für Tailwind CSS IntelliSense und TypeScript-Unterstützung konfigurieren.
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"tailwindCSS.experimental.classRegex": [
["cva\\(([^)]*)\\)", "[\"'`]([^\"'`]*).*?[\"'`]"],
["cx\\(([^)]*)\\)", "(?:'|\"|`)([^']*)(?:'|\"|`)"]
],
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true
}
Empfohlene VS Code-Erweiterungen (.vscode/extensions.json):
{
"recommendations": [
"bradlc.vscode-tailwindcss",
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"ms-vscode.vscode-typescript-next"
]
}
Erwartet: Tailwind IntelliSense zeigt Klassen-Vervollständigung in TypeScript-Dateien. TypeScript-Fehler erscheinen inline.
Bei Fehler: Wenn IntelliSense fehlt, sicherstellen, dass die Tailwind CSS IntelliSense-Erweiterung installiert ist und tailwindCSS.experimental.classRegex korrekt konfiguriert ist.
Schritt 6: Konfiguration verifizieren
Prüfen, ob Tailwind und TypeScript korrekt zusammenarbeiten.
# TypeScript-Kompilierung ohne Ausgabe prüfen
npx tsc --noEmit
# CSS auf Tailwind-Klassen testen
echo '<div class="bg-blue-500 text-white p-4">Test</div>' > /tmp/test.html
npx tailwindcss -i ./src/app/globals.css -o /tmp/output.css --content '/tmp/test.html'
grep "bg-blue-500" /tmp/output.css
Erwartet: tsc --noEmit meldet 0 Fehler. Tailwind-Output-CSS enthält bg-blue-500-Klasse.
Bei Fehler: TypeScript-Fehler identifizieren, indem tsc --noEmit 2>&1 | head -20 ausgeführt wird. Wenn Tailwind-Klassen fehlen, Pfade im content-Array von tailwind.config.ts überprüfen.
Validierung
-
tailwind.config.tsmit korrektencontent-Pfaden vorhanden -
postcss.config.jsmit Tailwind CSS-Plugin vorhanden - Globale CSS-Datei hat alle drei
@tailwind-Direktiven -
tsconfig.jsonmitstrict: trueund Pfad-Aliasen konfiguriert -
tsc --noEmitmeldet keine Fehler - Tailwind-Klassen erscheinen in kompiliertem CSS
- VS Code IntelliSense funktioniert für Tailwind-Klassen
Haeufige Stolperfallen
- Fehlende
content-Pfade: Wenn Tailwind-Klassen nicht in der Ausgabe erscheinen, liegt es fast immer daran, dass die Dateipfade nicht mit demcontent-Array übereinstimmen. Alle Dateiextensionen und Verzeichnisse explizit auflisten. - PostCSS-Reihenfolge: In
postcss.config.jsmusstailwindcssvorautoprefixererscheinen. - TypeScript
pathsohne baseUrl: Bei Verwendung vonpathsentwederbaseUrlsetzen oder sicherstellen, dass das Bundler-Modul-Auflösung unterstützt. @tailwind-Direktiven vs Imports:@import 'tailwindcss/...'funktioniert auch, aber@tailwind base/components/utilitiesist idiomatischer in Tailwind v3.- Klassen-Übersteuerung in
@layer: Benutzerdefinierte Klassen im@layer componentskönnen von Utilities mit demselben Namen nicht überschrieben werden — Utility-Klassen haben immer höhere Spezifität. - TypeScript
strictnach der Einführung: Das nachträgliche Aktivieren vonstrict: trueerzeugt oft Hunderte von Fehlern. Schrittweise mitexactOptionalPropertyTypes,noUncheckedIndexedAccessusw. aktivieren.
Verwandte Skills
scaffold-nextjs-app— neues Next.js-Projekt mit Tailwind + TypeScript erstellendeploy-to-vercel— Tailwind + TypeScript-App auf Vercel deployen
GitHub репозиторий
Похожие навыки
llamaguard
ДругоеLlamaGuard — это модель от Meta с 7–8 миллиардами параметров для модерации входных и выходных данных больших языковых моделей по шести категориям безопасности, таким как насилие и разжигание ненависти. Она обеспечивает точность 94–95% и может быть развернута с помощью vLLM, Hugging Face или Amazon SageMaker. Используйте этот навык, чтобы легко интегрировать фильтрацию контента и защитные механизмы в ваши ИИ-приложения.
cost-optimization
ДругоеЭтот навык Claude помогает разработчикам оптимизировать облачные расходы за счет правильного подбора ресурсов, стратегий тегирования и анализа затрат. Он предоставляет framework для сокращения облачных расходов и внедрения управления затратами в AWS, Azure и GCP. Используйте его, когда вам нужно проанализировать расходы на инфраструктуру, оптимизировать ресурсы или уложиться в бюджетные ограничения.
quantizing-models-bitsandbytes
ДругоеЭтот навык выполняет квантизацию LLM до 8-битной или 4-битной точности с использованием библиотеки bitsandbytes, обеспечивая сокращение использования памяти на 50-75% при минимальной потере точности. Он идеально подходит для запуска больших моделей при ограниченной памяти GPU или для ускорения вывода, поддерживая форматы INT8, NF4 и FP4. Навык интегрируется с HuggingFace Transformers и позволяет использовать обучение QLoRA и 8-битные оптимизаторы.
dispatching-parallel-agents
ДругоеЭтот навык Claude распределяет нескольких агентов для исследования и устранения трёх и более независимых проблем параллельно. Он предназначен для сценариев с несвязанными сбоями, которые можно устранить без общего состояния или зависимостей. Ключевая возможность — параллельное решение проблем, где за каждую независимую предметную область назначается отдельный агент для максимальной эффективности.
