vibes-plug 1.0.0 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/rules/vibes-plug-core.md +32 -0
- package/.cursor/rules/vibes-plug-core.mdc +51 -0
- package/.cursorrules +42 -0
- package/AGENTS.md +96 -0
- package/BLUEPRINT.md +309 -125
- package/CHANGELOG.md +183 -1
- package/CLAUDE.md +70 -0
- package/LICENSE +1 -1
- package/README.md +641 -263
- package/index.js +19 -0
- package/package.json +61 -25
- package/plugin.json +24 -7
- package/scripts/generate_swarm_gif.py +295 -0
- package/scripts/install.js +201 -0
- package/skills/accessibility-testing-expert/SKILL.md +116 -0
- package/skills/ai-cost-token-optimizer/SKILL.md +82 -0
- package/skills/ai-evals-benchmark-expert/SKILL.md +188 -0
- package/skills/ai-llm-integration-expert/SKILL.md +147 -122
- package/skills/ai-media-generation-expert/SKILL.md +172 -0
- package/skills/ai-prompt-engineering-expert/SKILL.md +84 -0
- package/skills/angular-expert/SKILL.md +148 -0
- package/skills/api-design-expert/SKILL.md +316 -309
- package/skills/api-gateway-proxy-expert/SKILL.md +81 -0
- package/skills/app-analyzer-optimizer/SKILL.md +195 -188
- package/skills/apple-ecosystem-expert/SKILL.md +145 -0
- package/skills/{asisten_ramah → asisten-ramah}/SKILL.md +7 -1
- package/skills/astro-framework-expert/SKILL.md +200 -0
- package/skills/async-queue-temporal-expert/SKILL.md +240 -0
- package/skills/authentication-identity-expert/SKILL.md +279 -45
- package/skills/auto-doc-updater/SKILL.md +219 -203
- package/skills/autonomous-chaos-monkey/SKILL.md +63 -0
- package/skills/autonomous-red-teamer/SKILL.md +203 -0
- package/skills/autonomous-tdd-debugger/SKILL.md +71 -0
- package/skills/background-jobs-queue-expert/SKILL.md +235 -0
- package/skills/biome-linter-formatter-expert/SKILL.md +89 -0
- package/skills/blockchain-web3-expert/SKILL.md +115 -0
- package/skills/bootstrap-to-modern/SKILL.md +93 -86
- package/skills/brainstorming/SKILL.md +381 -353
- package/skills/browser-automation-expert/SKILL.md +222 -0
- package/skills/bun-runtime-expert/SKILL.md +7 -1
- package/skills/chatbot-messaging-expert/SKILL.md +114 -0
- package/skills/ci-cd-devops-architect/SKILL.md +81 -45
- package/skills/cloud-hosting-expert/SKILL.md +249 -243
- package/skills/coderabbit/SKILL.md +197 -191
- package/skills/compliance-gdpr-privacy-expert/SKILL.md +85 -0
- package/skills/cron-scheduler-expert/SKILL.md +304 -0
- package/skills/data-pipeline-etl-expert/SKILL.md +84 -0
- package/skills/data-telemetry-expert/SKILL.md +218 -212
- package/skills/data-visualization-expert/SKILL.md +154 -0
- package/skills/database-migration-versioning-expert/SKILL.md +90 -0
- package/skills/database-orm-expert/SKILL.md +303 -293
- package/skills/dependency-upgrade-migrator/SKILL.md +301 -0
- package/skills/design-system-architect/SKILL.md +278 -242
- package/skills/desktop-electron-expert/SKILL.md +128 -0
- package/skills/documentation-site-expert/SKILL.md +59 -0
- package/skills/doku-mcp-server/SKILL.md +257 -0
- package/skills/doku-payment-gateway/SKILL.md +233 -0
- package/skills/domain-driven-design-expert/SKILL.md +82 -0
- package/skills/e2e-testing-expert/SKILL.md +320 -314
- package/skills/ecommerce-expert/SKILL.md +87 -0
- package/skills/edge-serverless-db-expert/SKILL.md +99 -0
- package/skills/email-notification-expert/SKILL.md +368 -0
- package/skills/error-resilience-expert/SKILL.md +486 -0
- package/skills/event-driven-architect/SKILL.md +86 -80
- package/skills/feature-flag-analytics-expert/SKILL.md +66 -0
- package/skills/file-upload-media-expert/SKILL.md +437 -0
- package/skills/firebase-security-expert/SKILL.md +7 -1
- package/skills/form-validation-expert/SKILL.md +407 -0
- package/skills/fullstack-expert/SKILL.md +260 -201
- package/skills/fullstack-expert/references/api_design_guide.md +466 -466
- package/skills/fullstack-expert/references/multi_language_backend.md +528 -528
- package/skills/fullstack-expert/scripts/api_contract_validator.py +253 -253
- package/skills/fullstack-expert/scripts/architecture_analyzer.py +326 -326
- package/skills/gemini-agent-booster/SKILL.md +142 -104
- package/skills/geospatial-maps-expert/SKILL.md +80 -0
- package/skills/global-a11y-i18n-expert/SKILL.md +86 -80
- package/skills/glsl-shader-expert/SKILL.md +107 -0
- package/skills/go-programming-expert/SKILL.md +300 -294
- package/skills/graph-rag-knowledge-expert/SKILL.md +159 -0
- package/skills/graphql-apollo-expert/SKILL.md +114 -0
- package/skills/headless-cms-expert/SKILL.md +181 -0
- package/skills/hig/SKILL.md +193 -187
- package/skills/js-backend-expert/SKILL.md +218 -191
- package/skills/legacy-code-translator/SKILL.md +71 -0
- package/skills/local-slm-edge-ai-expert/SKILL.md +167 -0
- package/skills/logging-error-tracking-expert/SKILL.md +344 -0
- package/skills/mcp-client-orchestrator/SKILL.md +76 -0
- package/skills/mcp-server-architect/SKILL.md +226 -126
- package/skills/micro-frontend-architect/SKILL.md +112 -0
- package/skills/mobile-expo-expert/SKILL.md +191 -185
- package/skills/mobile-push-notification-expert/SKILL.md +71 -0
- package/skills/modern-css-native-expert/SKILL.md +189 -0
- package/skills/monday-design-aesthetic/SKILL.md +72 -66
- package/skills/monorepo-architect/SKILL.md +232 -226
- package/skills/mpa-orchestrator/SKILL.md +120 -101
- package/skills/multi-agent-orchestration/SKILL.md +173 -153
- package/skills/multiple-entry-points/SKILL.md +91 -55
- package/skills/mvc-expert/SKILL.md +237 -231
- package/skills/n8n-automation-expert/SKILL.md +89 -0
- package/skills/nextjs-app-router-expert/SKILL.md +148 -0
- package/skills/openapi-swagger-codegen-expert/SKILL.md +67 -0
- package/skills/payment-gateway-expert/SKILL.md +129 -45
- package/skills/pdf-document-generation-expert/SKILL.md +91 -0
- package/skills/performance-web-vitals/SKILL.md +337 -331
- package/skills/post-quantum-crypto-migrator/SKILL.md +57 -0
- package/skills/prd-architect/SKILL.md +206 -190
- package/skills/proactive-background-watcher/SKILL.md +68 -0
- package/skills/production-ready-hardener/PRODUCTION_READINESS_REPORT.md +67 -0
- package/skills/production-ready-hardener/SKILL.md +461 -468
- package/skills/production-ready-hardener/references/production_checklist.md +161 -161
- package/skills/production-ready-hardener/scripts/production_readiness_scanner.py +881 -875
- package/skills/project-context-mapper/SKILL.md +85 -0
- package/skills/pwa-offline-first-expert/SKILL.md +185 -0
- package/skills/python-programming-expert/SKILL.md +407 -270
- package/skills/rate-limit-abuse-prevention/SKILL.md +377 -0
- package/skills/realtime-collaboration-expert/SKILL.md +99 -45
- package/skills/rich-text-editor-expert/SKILL.md +177 -0
- package/skills/rust-programming-expert/SKILL.md +240 -234
- package/skills/saas-billing/SKILL.md +382 -376
- package/skills/saas-multi-tenant/SKILL.md +256 -236
- package/skills/saas-mvp-launcher/SKILL.md +30 -1
- package/skills/saas-transformer/SKILL.md +499 -445
- package/skills/saas-transformer/references/billing_integration_guide.md +401 -401
- package/skills/saas-transformer/references/feature_gating_patterns.md +137 -137
- package/skills/saas-transformer/references/saas_transformation_checklist.md +121 -121
- package/skills/saas-transformer/scripts/saas_transformation_scanner.py +39 -29
- package/skills/scalability-clean-code/SKILL.md +234 -228
- package/skills/search-engine-expert/SKILL.md +89 -0
- package/skills/secure-fuzz-testing/SKILL.md +7 -1
- package/skills/self-evolving-memory-graph/SKILL.md +91 -0
- package/skills/self-healing-cloud-orchestrator/SKILL.md +57 -0
- package/skills/senior-frontend/SKILL.md +85 -105
- package/skills/seo/SKILL.md +258 -224
- package/skills/session-context-loader/SKILL.md +83 -0
- package/skills/session-handoff-resume/SKILL.md +163 -157
- package/skills/{skill_baru → skill-baru}/SKILL.md +177 -146
- package/skills/solidjs-expert/SKILL.md +80 -0
- package/skills/spa-orchestrator/SKILL.md +306 -287
- package/skills/sse-websocket-streaming-expert/SKILL.md +93 -0
- package/skills/state-management-expert/SKILL.md +277 -271
- package/skills/supabase-migration/SKILL.md +47 -1
- package/skills/supabase-security-expert/SKILL.md +248 -242
- package/skills/svelte-sveltekit-expert/SKILL.md +91 -0
- package/skills/svg-animation-motion-expert/SKILL.md +115 -0
- package/skills/tailwind-expert/SKILL.md +139 -187
- package/skills/tanstack-query-expert/SKILL.md +204 -198
- package/skills/tauri-expert/SKILL.md +7 -1
- package/skills/token-saver/SKILL.md +118 -110
- package/skills/typescript-expert/SKILL.md +329 -278
- package/skills/ui-components-expert/SKILL.md +166 -63
- package/skills/ui-ux-pro-max/SKILL.md +221 -200
- package/skills/vector-db-rag-expert/SKILL.md +208 -0
- package/skills/vibe-code-gardener/SKILL.md +180 -172
- package/skills/visual-qa-vision-agent/SKILL.md +71 -0
- package/skills/voice-ai-realtime-agent/SKILL.md +202 -0
- package/skills/vue-frontend-expert/SKILL.md +132 -0
- package/skills/wasm-edge-computing-expert/SKILL.md +97 -0
- package/skills/web-3d-graphics-expert/SKILL.md +137 -0
- package/skills/web-game-engine-expert/SKILL.md +102 -0
- package/skills/web-scraper/SKILL.md +98 -146
- package/skills/website-design-cloner/SKILL.md +180 -0
- package/skills/webxr-ar-vr-expert/SKILL.md +123 -0
- package/skills/wordpress-headless-expert/SKILL.md +144 -0
- package/skills/zero-to-prod-orchestrator/SKILL.md +231 -180
- package/skills/zero-trust-secret-vault/SKILL.md +88 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
- package/CONTRIBUTING.md +0 -199
- package/SECURITY.md +0 -21
- package/banner.png +0 -0
- package/skills/senior-fullstack/SKILL.md +0 -167
- package/skills/senior-fullstack/references/architecture_patterns.md +0 -160
- package/skills/senior-fullstack/references/development_workflows.md +0 -222
- package/skills/senior-fullstack/references/tech_stack_guide.md +0 -190
- package/skills/senior-fullstack/scripts/code_quality_analyzer.py +0 -114
- package/skills/senior-fullstack/scripts/fullstack_scaffolder.py +0 -114
- package/skills/senior-fullstack/scripts/project_scaffolder.py +0 -114
- package/skills/seo-aeo-landing-page-writer/SKILL.md +0 -97
- package/skills/seo-geo/SKILL.md +0 -188
- package/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-310.pyc +0 -0
- package/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-312.pyc +0 -0
- package/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-310.pyc +0 -0
- package/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-312.pyc +0 -0
- package/skills/ui_ux_expert/SKILL.md +0 -114
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: svg-animation-motion-expert
|
|
3
|
+
description: "Expert guide for web animations: SVG manipulation, Framer Motion 12+, GSAP 3, CSS Scroll-Driven Animations, and View Transitions API / Panduan ahli animasi web."
|
|
4
|
+
author: "Roedy Rustam"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# SVG & Web Animation Motion Expert
|
|
8
|
+
|
|
9
|
+
[English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
<a name="english"></a>
|
|
14
|
+
## English
|
|
15
|
+
|
|
16
|
+
### Description
|
|
17
|
+
A dedicated skill for crafting fluid, high-performance web animations and micro-interactions. Covers direct SVG manipulation (paths, masks, clip-paths), React-based animations using Framer Motion 12+, advanced timeline choreography with GSAP 3, native CSS Scroll-Driven Animations, and the View Transitions API for seamless page navigations.
|
|
18
|
+
|
|
19
|
+
### Trigger Conditions
|
|
20
|
+
- When building complex landing page animations or scroll reveals.
|
|
21
|
+
- When creating interactive SVG graphics, charts, or diagrams.
|
|
22
|
+
- When the user asks for "buttery smooth", "apple-like", or "dynamic" interactions.
|
|
23
|
+
- When implementing page transitions using the native View Transitions API.
|
|
24
|
+
|
|
25
|
+
### Core Architecture & Guidelines
|
|
26
|
+
|
|
27
|
+
#### 1. Framer Motion 12+ (React/Next.js)
|
|
28
|
+
Use Framer Motion for declarative component animations, layout animations, and gesture-driven interactions.
|
|
29
|
+
- **Layout Animations**: Use the `layout` prop to automatically animate between flexbox/grid state changes.
|
|
30
|
+
- **Performance**: Use `style={{ x, y }}` with `useTransform` and `useScroll` instead of triggering React state updates on every frame.
|
|
31
|
+
|
|
32
|
+
```tsx
|
|
33
|
+
'use client'
|
|
34
|
+
|
|
35
|
+
import { motion, useScroll, useTransform } from 'framer-motion'
|
|
36
|
+
import { useRef } from 'react'
|
|
37
|
+
|
|
38
|
+
export function ScrollReveal({ children }: { children: React.ReactNode }) {
|
|
39
|
+
const ref = useRef(null)
|
|
40
|
+
const { scrollYProgress } = useScroll({ target: ref, offset: ['0 1', '1 1'] })
|
|
41
|
+
const y = useTransform(scrollYProgress, [0, 1], [100, 0])
|
|
42
|
+
const opacity = useTransform(scrollYProgress, [0, 1], [0, 1])
|
|
43
|
+
|
|
44
|
+
return (
|
|
45
|
+
<motion.div ref={ref} style={{ y, opacity }}>
|
|
46
|
+
{children}
|
|
47
|
+
</motion.div>
|
|
48
|
+
)
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
#### 2. GSAP 3 (Complex Choreography)
|
|
53
|
+
Use GSAP when you need highly coordinated timeline sequences, path tracing, or when working outside of React (Vanilla JS).
|
|
54
|
+
- **ScrollTrigger**: The industry standard for complex scroll-based animations.
|
|
55
|
+
- **DrawSVG / MorphSVG**: Use for advanced SVG path drawing and morphing (requires Club GreenSock, use open-source alternatives if unavailable).
|
|
56
|
+
|
|
57
|
+
#### 3. Native CSS Scroll-Driven Animations
|
|
58
|
+
Where possible, leverage modern native CSS to tie animations to scroll position on the compositor thread for zero-JS performance.
|
|
59
|
+
```css
|
|
60
|
+
@keyframes slide-in {
|
|
61
|
+
from { opacity: 0; transform: translateY(100px); }
|
|
62
|
+
to { opacity: 1; transform: translateY(0); }
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.reveal-on-scroll {
|
|
66
|
+
animation: slide-in linear both;
|
|
67
|
+
animation-timeline: view();
|
|
68
|
+
animation-range: entry 25% cover 50%;
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
#### 4. SVG Optimization & Manipulation
|
|
73
|
+
- Always run SVGs through SVGO to strip bloat before animating.
|
|
74
|
+
- Keep `viewBox` responsive.
|
|
75
|
+
- Target `<path>`, `<circle>`, and `<mask/>` elements via CSS vars or inline Framer Motion logic.
|
|
76
|
+
|
|
77
|
+
## Orchestration & Integration
|
|
78
|
+
- Works hand-in-hand with `ui-ux-pro-max` and `monday-design-aesthetic` to bring designs to life.
|
|
79
|
+
- Complements `senior-frontend` by handling the motion layer of the UI.
|
|
80
|
+
- Integrates with `seo-aeo-landing-page-writer` to build visually stunning landing pages.
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
<a name="bahasa-indonesia"></a>
|
|
85
|
+
## Bahasa Indonesia
|
|
86
|
+
|
|
87
|
+
### Deskripsi
|
|
88
|
+
Skill khusus untuk membuat animasi web dan interaksi mikro yang lancar dan berkinerja tinggi. Mencakup manipulasi SVG langsung, animasi berbasis React menggunakan Framer Motion 12+, koreografi timeline lanjutan dengan GSAP 3, CSS Scroll-Driven Animations native, dan View Transitions API.
|
|
89
|
+
|
|
90
|
+
### Kondisi Pemicu
|
|
91
|
+
- Saat membangun animasi landing page yang kompleks.
|
|
92
|
+
- Saat membuat grafik, chart, atau diagram SVG interaktif.
|
|
93
|
+
- Saat pengguna meminta interaksi yang "sangat mulus", "mirip Apple", atau "dinamis".
|
|
94
|
+
- Saat mengimplementasikan transisi halaman menggunakan View Transitions API native.
|
|
95
|
+
|
|
96
|
+
### Panduan Arsitektur Inti
|
|
97
|
+
|
|
98
|
+
#### 1. Framer Motion 12+ (React/Next.js)
|
|
99
|
+
Gunakan Framer Motion untuk animasi komponen deklaratif, animasi layout, dan interaksi gestur.
|
|
100
|
+
- Hindari memicu pembaruan state React pada setiap frame animasi. Gunakan `useTransform` dan `useScroll` yang beroperasi di luar siklus render React untuk performa 60fps.
|
|
101
|
+
|
|
102
|
+
#### 2. GSAP 3
|
|
103
|
+
Gunakan GSAP untuk urutan timeline yang sangat terkoordinasi atau saat bekerja di luar ekosistem React. Plugin `ScrollTrigger` sangat berguna untuk merangkai aksi kompleks berdasarkan posisi scroll.
|
|
104
|
+
|
|
105
|
+
#### 3. CSS Scroll-Driven Animations Native
|
|
106
|
+
Manfaatkan CSS modern (`animation-timeline: view()`) untuk mengikat animasi ke posisi scroll langsung di compositor thread tanpa JavaScript sama sekali. Ini memberikan performa terbaik untuk efek paralaks dan reveal.
|
|
107
|
+
|
|
108
|
+
#### 4. Manipulasi SVG
|
|
109
|
+
- Selalu optimasi SVG (buang tag tidak perlu) sebelum dianimasikan.
|
|
110
|
+
- Gunakan `<clipPath>` dan `<mask>` untuk transisi transisi pengungkapan gambar yang dramatis.
|
|
111
|
+
|
|
112
|
+
## Integrasi Orkestrasi
|
|
113
|
+
- Bekerja sama dengan `ui-ux-pro-max` dan `monday-design-aesthetic` untuk menghidupkan desain statis.
|
|
114
|
+
- Melengkapi `senior-frontend` dengan menangani lapisan pergerakan (motion layer) UI.
|
|
115
|
+
- Terintegrasi dengan `seo-aeo-landing-page-writer` untuk merancang landing page yang memukau secara visual.
|
|
@@ -1,188 +1,140 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: tailwind-expert
|
|
3
|
-
description: "
|
|
1
|
+
---
|
|
2
|
+
name: tailwind-expert
|
|
3
|
+
description: "Expert guide for Tailwind CSS v4, CSS-first configuration, @theme customization, and modern responsive design / Panduan ahli untuk Tailwind CSS v4, konfigurasi CSS-first, kustomisasi @theme, dan desain responsif modern."
|
|
4
4
|
author: "Roedy Rustam"
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Tailwind CSS Expert (v4 Edition)
|
|
8
|
-
|
|
9
|
-
[English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
<a name="english"></a>
|
|
14
|
-
## English
|
|
15
|
-
|
|
16
|
-
### Description
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
### Trigger Conditions
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
/*
|
|
42
|
-
--
|
|
43
|
-
--
|
|
44
|
-
|
|
45
|
-
/*
|
|
46
|
-
--
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
- Tailwind v4 uses **Lightning CSS** for transforms — 4x faster builds than v3 with PostCSS.
|
|
142
|
-
- CSS bundle is now fully tree-shaken — only styles used in your HTML/JSX are generated.
|
|
143
|
-
- Use `@layer utilities` for custom utilities that need Tailwind's specificity.
|
|
144
|
-
- Avoid `@apply` in performance-critical loops — prefer utility classes directly in HTML.
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
<a name="bahasa-indonesia"></a>
|
|
149
|
-
## Bahasa Indonesia
|
|
150
|
-
|
|
151
|
-
### Deskripsi
|
|
152
|
-
Panduan mendalam untuk **Tailwind CSS v4** — mencakup model konfigurasi CSS-first baru, direktif `@theme` untuk design token, `@plugin` untuk plugin, 3D transform, peningkatan gradient, dan migrasi dari v3.
|
|
153
|
-
|
|
154
|
-
### Kondisi Pemicu
|
|
155
|
-
- Menyiapkan atau mengonfigurasi proyek Tailwind CSS v4 baru.
|
|
156
|
-
- Mendefinisikan design token via direktif `@theme` di CSS.
|
|
157
|
-
- Migrasi dari Tailwind CSS v3 ke v4.
|
|
158
|
-
- Menggunakan utilitas v4 baru: 3D transform, `field-sizing`, fungsi color mix.
|
|
159
|
-
- Mendaftarkan plugin kustom dengan direktif `@plugin`.
|
|
160
|
-
|
|
161
|
-
### Tailwind v4 — Pergeseran Paradigma CSS-First
|
|
162
|
-
|
|
163
|
-
Tailwind v4 menghilangkan `tailwind.config.js` sepenuhnya. Semua konfigurasi dilakukan di CSS menggunakan direktif `@theme`. Plugin didaftarkan dengan `@plugin`. Breakpoint, warna, spacing, animasi — semuanya didefinisikan sebagai variabel CSS `--*` di dalam blok `@theme`.
|
|
164
|
-
|
|
165
|
-
### Utilitas Baru di Tailwind v4
|
|
166
|
-
|
|
167
|
-
#### 3D Transform
|
|
168
|
-
Tailwind v4 menambahkan utilitas untuk 3D transform: `perspective-{nilai}`, `rotate-x-{derajat}`, `rotate-y-{derajat}`, `transform-3d`, `backface-visible`, `backface-hidden` — ideal untuk efek flip kartu dan galeri 3D.
|
|
169
|
-
|
|
170
|
-
#### Container Queries
|
|
171
|
-
Gunakan `@container` dan utilitas `@sm:`, `@lg:` untuk membuat komponen yang responsif terhadap ukuran container induknya, bukan ukuran viewport.
|
|
172
|
-
|
|
173
|
-
#### `field-sizing` untuk Textarea Auto-Resize
|
|
174
|
-
Kelas `field-sizing-content` membuat textarea otomatis menyesuaikan ukurannya dengan konten — tanpa JavaScript.
|
|
175
|
-
|
|
176
|
-
### Migrasi dari v3 ke v4
|
|
177
|
-
|
|
178
|
-
Gunakan alat migrasi otomatis `npx @tailwindcss/upgrade` untuk konversi dasar. Perubahan kunci:
|
|
179
|
-
- `tailwind.config.js` → `@theme {}` di CSS
|
|
180
|
-
- `plugins: [require('...')]` → `@plugin "..."`
|
|
181
|
-
- `darkMode: 'class'` → `@variant dark`
|
|
182
|
-
- Array `content` → Deteksi otomatis (tidak perlu konfigurasi)
|
|
183
|
-
|
|
184
|
-
### Tip Performa
|
|
185
|
-
- Tailwind v4 menggunakan **Lightning CSS** — build 4x lebih cepat dari v3 dengan PostCSS.
|
|
186
|
-
- Bundle CSS sepenuhnya di-tree-shake — hanya style yang digunakan yang dihasilkan.
|
|
187
|
-
- Gunakan `@layer utilities` untuk utilitas kustom yang membutuhkan spesifisitas Tailwind.
|
|
188
|
-
- Hindari `@apply` di loop kritis performa — gunakan kelas utilitas langsung di HTML.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Tailwind CSS Expert (v4 Edition)
|
|
8
|
+
|
|
9
|
+
[English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
<a name="english"></a>
|
|
14
|
+
## English
|
|
15
|
+
|
|
16
|
+
### Description
|
|
17
|
+
Strict guidelines and best practices for Tailwind CSS v4. Enforces the CSS-first configuration model, `@theme` token definitions, dynamic utilities, and performance optimization via Lightning CSS.
|
|
18
|
+
|
|
19
|
+
### Trigger Conditions
|
|
20
|
+
- Scaffold or configure a Tailwind CSS v4 project.
|
|
21
|
+
- Migrate a codebase from Tailwind CSS v3 to v4.
|
|
22
|
+
- Implement design tokens via `@theme`.
|
|
23
|
+
- Apply 3D transforms, CSS container queries, or `field-sizing`.
|
|
24
|
+
|
|
25
|
+
## Orchestration & Integration
|
|
26
|
+
Integrates tightly with the following skills:
|
|
27
|
+
- **`senior-frontend`**: Feeds modern CSS capabilities into Next.js/React component architecture.
|
|
28
|
+
- **`ui-components-expert`**: Provides the styling primitives for Radix/shadcn-style components.
|
|
29
|
+
- **`design-system-architect`**: Establishes the core tokens mapped inside `@theme`.
|
|
30
|
+
|
|
31
|
+
### Execution Standards
|
|
32
|
+
|
|
33
|
+
#### 1. CSS-First Architecture
|
|
34
|
+
Do NOT create `tailwind.config.js`. Define all configuration inside CSS using the `@theme` directive.
|
|
35
|
+
|
|
36
|
+
```css
|
|
37
|
+
/* app/globals.css */
|
|
38
|
+
@import "tailwindcss";
|
|
39
|
+
|
|
40
|
+
@theme {
|
|
41
|
+
/* OKLCH Colors for wide-gamut displays */
|
|
42
|
+
--color-brand-50: oklch(97% 0.02 250);
|
|
43
|
+
--color-brand-500: oklch(55% 0.2 250);
|
|
44
|
+
|
|
45
|
+
/* Typography */
|
|
46
|
+
--font-sans: "Inter Variable", system-ui, sans-serif;
|
|
47
|
+
|
|
48
|
+
/* Custom breakpoints */
|
|
49
|
+
--breakpoint-3xl: 112rem;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* Register plugins */
|
|
53
|
+
@plugin "@tailwindcss/typography";
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
#### 2. Advanced Utilities
|
|
57
|
+
Utilize v4-native features instead of custom CSS where possible:
|
|
58
|
+
- **3D Transforms**: Use `perspective-1000`, `rotate-x-12`, `transform-3d`, `backface-hidden`.
|
|
59
|
+
- **Color Mix**: Use inline mixing: `text-[color-mix(in_oklch,blue_70%,white)]`.
|
|
60
|
+
- **Container Queries**: Use `@container` on the parent, `@sm:grid-cols-2` on children.
|
|
61
|
+
- **Auto-sizing**: Use `field-sizing-content` for dynamically sizing textareas.
|
|
62
|
+
|
|
63
|
+
#### 3. Migration (v3 to v4)
|
|
64
|
+
When upgrading older codebases:
|
|
65
|
+
1. Run `npx @tailwindcss/upgrade` automatically.
|
|
66
|
+
2. Manually verify `tailwind.config.js` logic is perfectly translated to `@theme` CSS variables.
|
|
67
|
+
3. Replace deprecated `addVariant` plugin code with `@variant` CSS directives:
|
|
68
|
+
```css
|
|
69
|
+
@variant hocus (&:hover, &:focus);
|
|
70
|
+
@variant dark (&:where(.dark, .dark *));
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
#### 4. Performance Directives
|
|
74
|
+
- **Zero Configuration**: Rely on v4's automatic content detection. Do not manually specify content paths.
|
|
75
|
+
- **Specificity**: Use `@layer utilities` strictly when custom CSS requires Tailwind's specificity tier.
|
|
76
|
+
- **No `@apply` Abuse**: Avoid `@apply` in loops or highly repeated components; use HTML utility classes to leverage Lightning CSS tree-shaking.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
<a name="bahasa-indonesia"></a>
|
|
81
|
+
## Bahasa Indonesia
|
|
82
|
+
|
|
83
|
+
### Deskripsi
|
|
84
|
+
Panduan ketat dan praktik terbaik untuk Tailwind CSS v4. Memaksa penggunaan model konfigurasi CSS-first, definisi token `@theme`, utilitas dinamis, dan optimasi performa melalui Lightning CSS.
|
|
85
|
+
|
|
86
|
+
### Kondisi Pemicu
|
|
87
|
+
- Menyiapkan atau mengonfigurasi proyek Tailwind CSS v4.
|
|
88
|
+
- Migrasi codebase dari Tailwind CSS v3 ke v4.
|
|
89
|
+
- Implementasi design token via `@theme`.
|
|
90
|
+
- Menggunakan 3D transform, container query, atau `field-sizing`.
|
|
91
|
+
|
|
92
|
+
## Integrasi Orkestrasi
|
|
93
|
+
Terintegrasi erat dengan skill berikut:
|
|
94
|
+
- **`senior-frontend`**: Menyuplai kapabilitas CSS modern ke dalam arsitektur komponen Next.js/React.
|
|
95
|
+
- **`ui-components-expert`**: Menyediakan primitif styling untuk komponen gaya Radix/shadcn.
|
|
96
|
+
- **`design-system-architect`**: Membangun token utama yang dipetakan di dalam `@theme`.
|
|
97
|
+
|
|
98
|
+
### Standar Eksekusi
|
|
99
|
+
|
|
100
|
+
#### 1. Arsitektur CSS-First
|
|
101
|
+
JANGAN membuat `tailwind.config.js`. Definisikan semua konfigurasi di dalam CSS menggunakan direktif `@theme`.
|
|
102
|
+
|
|
103
|
+
```css
|
|
104
|
+
/* app/globals.css */
|
|
105
|
+
@import "tailwindcss";
|
|
106
|
+
|
|
107
|
+
@theme {
|
|
108
|
+
/* Warna OKLCH untuk layar wide-gamut */
|
|
109
|
+
--color-brand-50: oklch(97% 0.02 250);
|
|
110
|
+
--color-brand-500: oklch(55% 0.2 250);
|
|
111
|
+
|
|
112
|
+
/* Tipografi */
|
|
113
|
+
--font-sans: "Inter Variable", system-ui, sans-serif;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* Registrasi plugin */
|
|
117
|
+
@plugin "@tailwindcss/typography";
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
#### 2. Utilitas Lanjutan
|
|
121
|
+
Gunakan fitur bawaan v4 alih-alih CSS kustom:
|
|
122
|
+
- **3D Transform**: Gunakan `perspective-1000`, `rotate-x-12`, `transform-3d`, `backface-hidden`.
|
|
123
|
+
- **Color Mix**: Gunakan `text-[color-mix(in_oklch,blue_70%,white)]`.
|
|
124
|
+
- **Container Queries**: Gunakan `@container` pada induk, `@sm:grid-cols-2` pada anak.
|
|
125
|
+
- **Auto-sizing**: Gunakan `field-sizing-content` untuk textarea agar ukurannya otomatis menyesuaikan.
|
|
126
|
+
|
|
127
|
+
#### 3. Migrasi (v3 ke v4)
|
|
128
|
+
Saat memperbarui codebase lama:
|
|
129
|
+
1. Jalankan `npx @tailwindcss/upgrade` secara otomatis.
|
|
130
|
+
2. Verifikasi manual logika `tailwind.config.js` agar diterjemahkan sempurna ke variabel CSS `@theme`.
|
|
131
|
+
3. Ganti plugin `addVariant` lama dengan direktif CSS `@variant`:
|
|
132
|
+
```css
|
|
133
|
+
@variant hocus (&:hover, &:focus);
|
|
134
|
+
@variant dark (&:where(.dark, .dark *));
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
#### 4. Arahan Performa
|
|
138
|
+
- **Konfigurasi Nol**: Andalkan deteksi konten otomatis v4. Jangan tentukan path konten secara manual.
|
|
139
|
+
- **Spesifisitas**: Gunakan `@layer utilities` secara ketat hanya jika CSS kustom memerlukan tingkat spesifisitas Tailwind.
|
|
140
|
+
- **Dilarang Menyalahgunakan `@apply`**: Hindari `@apply` pada loop atau komponen berulang; gunakan kelas utilitas di HTML untuk memaksimalkan tree-shaking Lightning CSS.
|