typescript-vite-tailwind-cursorrules-prompt-file — правило для Cursor
Правило для Cursor задаёт стиль кода на TypeScript во Vue-проектах со сборкой Vite и стилями Tailwind. Пригодится, когда агент пишет компоненты и вам нужен предсказуемый результат.
.cursor/rules/typescript-vite-tailwind-cursorrules-prompt-file.mdcЧто делает typescript-vite-tailwind-cursorrules-prompt-file
Файл описывает, как агент должен писать код: функциональные и декларативные паттерны вместо классов, именованные экспорты, интерфейсы вместо типов, карты вместо enum. Имена переменных советует строить с вспомогательными глаголами вроде isLoading и hasError, а каталоги называть строчными буквами через дефис. Чистые функции — через ключевое слово function.
Для UI правило опирается на DaisyUI и Tailwind, вёрстку просит делать mobile-first. Компоненты Vue — только в стиле Composition API со script setup. Производительность: обёртка асинхронных компонентов в Suspense с запасным UI, динамическая подгрузка некритичных частей, изображения в WebP с размерами и ленивой загрузкой, разбиение бандла на этапе сборки Vite.
Отдельный блок про ревью: проверять компоненты на лишние ререндеры и оптимизировать их функциями VueUse. Правило подключается как .cursor/rules/typescript-vite-tailwind-cursorrules-prompt-file.mdc и по умолчанию не применяется ко всем файлам — в описании стоит alwaysApply: false, поэтому его нужно включить вручную. Стек в тексте шире имени файла: там ещё Vue Router, Pinia и VueUse, так что для React-проекта это правило не подойдёт.
Какие задачи решает
- задать агенту единый стиль TypeScript во Vue-проекте
- выбрать между интерфейсами и типами без споров в ревью
- настроить mobile-first вёрстку на Tailwind и DaisyUI
- убрать лишние ререндеры через функции VueUse
- разбить бандл Vite на чанки и ускорить загрузку
Примеры запросов агенту
- Перепиши этот компонент на Composition API со script setup
- Проверь компонент на лишние ререндеры и предложи оптимизацию
- Настрой code splitting в сборке Vite для этого проекта
Как установить typescript-vite-tailwind-cursorrules-prompt-file
Вручную: положить файлы
.cursor/rules/typescript-vite-tailwind-cursorrules-prompt-file.mdcВо frontmatter: description, globs, alwaysApply
Вручную: положить файлы
.claude/rules/typescript-vite-tailwind-cursorrules-prompt-file.mdПоле paths во frontmatter ограничивает файлы: globs из источника → paths
AGENTS.md
Codex читает AGENTS.md: вставьте текст правила туда
Вручную: положить файлы
.github/instructions/typescript-vite-tailwind-cursorrules-prompt-file.instructions.mdПоле applyTo задаёт, к каким файлам применять: globs из источника → applyTo
Вручную: положить файлы
.devin/rules/typescript-vite-tailwind-cursorrules-prompt-file.mdВручную: положить файлы
.clinerules/typescript-vite-tailwind-cursorrules-prompt-file.mdПо шагам, с командами для каждой платформы: Cursor rules: файлы .mdc, четыре режима и замена .cursorrules
Вопросы о typescript-vite-tailwind-cursorrules-prompt-file
Как установить typescript-vite-tailwind-cursorrules-prompt-file в Cursor?
Создайте файл .cursor/rules/typescript-vite-tailwind-cursorrules-prompt-file.mdc в корне проекта и вставьте в него содержимое правила.
Что делает это правило?
Оно задаёт агенту Cursor соглашения по коду: функциональный стиль TypeScript, интерфейсы вместо типов, карты вместо enum, вёрстку на Tailwind и DaisyUI, оптимизацию производительности через VueUse и разбиение бандла Vite.
Правило применяется ко всем файлам автоматически?
Нет. В нём стоит alwaysApply: false, поэтому его нужно включить вручную. Поле globs при этом указывает на **/*.
Исходный текст
typescript-vite-tailwind-cursorrules-prompt-file.mdc · CC0-1.0
--- description: "Cursor rules for TypeScript development with Vite and Tailwind integration." globs: **/* alwaysApply: false --- You are an expert in TypeScript, Node.js, Vite, Vue.js, Vue Router, Pinia, VueUse, DaisyUI, and Tailwind, with a deep understanding of best practices and performance optimization techniques in these technologies. Code Style and Structure - Write concise, maintainable, and technically accurate TypeScript code with relevant examples. - Use functional and declarative programming patterns; avoid classes. - Favor iteration and modularization to adhere to DRY principles and avoid code duplication. - Use descriptive variable names with auxiliary verbs (e.g., isLoading, hasError). - Organize files systematically: each file should contain only related content, such as exported components, subcomponents, helpers, static content, and types. Naming Conventions - Use lowercase with dashes for directories (e.g., components/auth-wizard). - Favor named exports for functions. TypeScript Usage - Use TypeScript for all code; prefer interfaces over types for their extendability and ability to merge. - Avoid enums; use maps instead for better type safety and flexibility. - Use functional components with TypeScript interfaces. Syntax and Formatting - Use the "function" keyword for pure functions to benefit from hoisting and clarity. - Always use the Vue Composition API script setup style. UI and Styling - Use DaisyUI, and Tailwind for components and styling. - Implement responsive design with Tailwind CSS; use a mobile-first approach. Performance Optimization - Leverage VueUse functions where applicable to enhance reactivity and performance. - Wrap asynchronous components in Suspense with a fallback UI. - Use dynamic loading for non-critical components. - Optimize images: use WebP format, include size data, implement lazy loading. - Implement an optimized chunking strategy during the Vite build process, such as code splitting, to generate smaller bundle sizes. Key Conventions - Optimize Web Vitals (LCP, CLS, FID) using tools like Lighthouse or WebPageTest. - Use the VueUse library for performance-enhancing functions. - Implement lazy loading for non-critical components. - Optimize images: use WebP format, include size data, implement lazy loading. - Implement an optimized chunking strategy during the Vite build process, such as code splitting, to generate smaller bundle sizes. Code Review - Review code for performance, readability, and adherence to best practices. - Ensure all components and functions are optimized for performance and maintainability. - Check for unnecessary re-renders and optimize them using VueUse functions. - Use the VueUse library for performance-enhancing functions. - Implement lazy loading for non-critical components. - Optimize images: use WebP format, include size data, implement lazy loading. - Implement an optimized chunking strategy during the Vite build process, such as code splitting, to generate smaller bundle sizes. Best Practices - Use the VueUse library for performance-enhancing functions. - Implement lazy loading for non-critical components. - Optimize images: use WebP format, include size data, implement lazy loading. - Implement an optimized chunking strategy during the Vite build process, such as code splitting, to generate smaller bundle sizes.
© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules