К основному содержанию
правило

harmony-arkts — правило для Cursor: что делает и как установить

Правило задаёт практики для HarmonyOS ArkTS: компоненты, состояние, ресурсы, разметка, жизненный цикл и доступность. Подходит для проектов с файлами .ets.

Установить в Cursor · Вручную: положить файлы Все способы и платформы ↓
.cursor/rules/harmony-arkts.mdc
Открыть на GitHub

Что делает harmony-arkts

Правило помогает держать ArkUI-код в предсказуемой структуре. Оно задаёт размещение состояния и хуков жизненного цикла, рекомендует выносить сложный интерфейс в компоненты и оставлять build() для композиции UI. Для обмена данными используются @Prop, @Link и @State по назначению.

Отдельные рекомендации посвящены Column, Row, Stack и List, группировке свойств разметки, ресурсам через $r() и обработчикам событий. Также правило напоминает об обработке ошибок, доступных подписях, фокусе, контрасте и проверке разных размеров экранов.

В Cursor файл подключается через .cursor/rules/harmony-arkts.mdc. Правило не применяется всегда: его область задают шаблоны для **/*.ets, **/*.ts, **/*.json5, AppScope/**/* и entry/src/main/**/*, поэтому код за их пределами оно не охватывает.

Какие задачи решает

  • структурировать ArkUI-компоненты
  • развести состояние и входные данные
  • вынести повторяющиеся значения в ресурсы
  • проверить доступность интерактивных элементов
  • убрать бизнес-логику из build()

Примеры запросов агенту

  • Проверь компонент в entry/src/main по правилам HarmonyOS ArkTS.
  • Раздели состояние и входные данные в этом .ets-файле, используя подходящие декораторы.
  • Перепиши разметку так, чтобы повторяющиеся цвета и размеры брались через $r().

Как установить harmony-arkts

Вручную: положить файлы

.cursor/rules/harmony-arkts.mdc

Во frontmatter: description, globs, alwaysApply

По шагам, с командами для каждой платформы: Cursor rules: файлы .mdc, четыре режима и замена .cursorrules

Вопросы о harmony-arkts

Как установить harmony-arkts в Cursor?

Скопируйте правило в файл .cursor/rules/harmony-arkts.mdc в проекте, убрав пробел внутри обратных кавычек.

Что делает harmony-arkts?

Правило задаёт рекомендации для структуры компонентов, состояния, разметки, событий, ресурсов, жизненного цикла и доступности в HarmonyOS ArkTS.

Какие файлы проверяет harmony-arkts?

Оно рассчитано на **/*.ets, **/*.ts, **/*.json5, AppScope/**/* и entry/src/main/**/*. Правило настроено без постоянного применения.

Исходный текст

harmony-arkts.mdc · CC0-1.0
---
description: HarmonyOS ArkTS rules for components, state, resources, layout, lifecycle, and accessibility
globs: ["**/*.ets", "**/*.ts", "**/*.json5", "AppScope/**/*", "entry/src/main/**/*"]
alwaysApply: false
---

# HarmonyOS ArkTS Rules

## Component Structure

- Use `@Component` for component definitions and PascalCase for component structs.
- Keep state declarations near the top of the component.
- Group lifecycle hooks before `build()`.
- Place `build()` last and keep it focused on UI composition.
- Extract complex UI into smaller components.

## State and Data Flow

- Use `@State` for component-owned state.
- Use `@Prop` for parent-to-child data.
- Use `@Link` only for intentional two-way binding.
- Keep derived values in methods or computed helpers rather than duplicating state.
- Avoid broad global state unless the project has an established app-state pattern.

## Layout and Styling

- Use `Column`, `Row`, `Stack`, `List`, and other ArkUI primitives intentionally.
- Keep layout properties such as width, height, alignment, and layout weight grouped before visual properties.
- Use object notation for margin and padding when sides differ.
- Use logical pixels consistently.
- Use percentage strings for relative sizes.
- Keep reusable spacing, colors, and typography in resources when the project supports it.

## Events and Lifecycle

- Use arrow functions for event handlers.
- Keep event handlers short and delegate complex logic to methods.
- Handle async failures explicitly and surface user-facing errors where appropriate.
- Use lifecycle hooks for setup and teardown that genuinely depends on component lifecycle.

## Resources and Accessibility

- Use `$r()` for app resources.
- Group resource references consistently.
- Add descriptive labels and focus handling for interactive elements.
- Maintain color contrast and touch target size.
- Test on representative device sizes and orientations.

## Common Mistakes

- Do not bury business logic in `build()`.
- Do not use two-way binding when one-way props are enough.
- Do not hardcode repeated strings, colors, and dimensions that belong in resources.
- Do not leave debug `console.log` calls in production code.

© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules

Похожие правила IDE

Все правила IDE по теме «Фронтенд и UI» →
winui3 официальный github Правило задаёт рекомендации для WinUI 3 и Windows App SDK: от XAML и потоков до окон и MVVM. Пригодится, чтобы Copilot учитывал особенности настольных приложений Windows. ★ 40 451звёзд репо vue официальный github Правило задаёт Copilot стандарты Vue 3: Composition API, <script setup>, реактивность, Pinia и Vue Router. Пригодится, когда агент пишет компоненты в вашем стиле. ★ 40 451звёзд репо tanstack-start-shadcn-tailwind официальный github Правило задаёт Copilot стек TanStack Start, Shadcn/ui и Tailwind CSS и требует валидировать внешние данные через Zod. ★ 40 451звёзд репо tailwind-v4-vite официальный github Правило помогает подключить Tailwind CSS v4 к проекту на Vite через официальный плагин. Пригодится и для новой установки, и при переходе с v3. ★ 40 451звёзд репо svelte официальный github Направляет GitHub Copilot на стандарты Svelte 5 и SvelteKit 2: руны вместо старых сторов, типизация компонентов и безопасная работа с SSR. ★ 40 451звёзд репо power-bi-custom-visuals-development официальный github Правило для GitHub Copilot, которое подсказывает агенту, как писать кастомные визуалы Power BI на React, D3.js и TypeScript. ★ 40 451звёзд репо

Из того же набора140

htmx-basic-cursorrules-prompt-file Задаёт Cursor правила разработки на HTMX: базовые атрибуты, структуру папок с бэкендом на app.py и принципы серверного рендеринга шаблонов. ★ 41 024звёзд репо html-tailwind-css-javascript-cursorrules-prompt-fi Правило для Cursor задаёт стиль работы с HTML, Tailwind CSS и vanilla JavaScript. Пригодится для фронтенд-задач без фреймворка. ★ 41 024звёзд репо how-to-documentation-cursorrules-prompt-file Правило превращает технические шаги, тест-скрипты и скриншоты в пошаговые инструкции для нетехнических пользователей. Пригодится, когда нужно писать «How To» по фиче. ★ 41 024звёзд репо hol-hedera-typescript-cursorrules-prompt-file Набор инструкций для Cursor по разработке ИИ-агентов на Hedera с Hashgraph Online SDK на TypeScript. Помогает соблюдать стандарты HCS и TDD. ★ 41 024звёзд репо graphical-apps-development-cursorrules-prompt-file Правило Cursor, которое задаёт агенту контекст проекта Pyllments: графовые LLM-приложения на Python с Panel и Langchain. ★ 41 024звёзд репо go Правило задаёт стиль Go-кода: явная обработка ошибок, интерфейсы и безопасная работа с контекстом. Пригодится для файлов .go в Cursor. ★ 41 024звёзд репо go-servemux-rest-api-cursorrules-prompt-file Правило для Cursor, которое настраивает ассистента писать REST API на Go через net/http и новый ServeMux из Go 1.22. ★ 41 024звёзд репо github-cursorrules-prompt-file-instructions Правило направляет Cursor к читаемому и поддерживаемому коду: осмысленным именам, коротким функциям и понятным комментариям. ★ 41 024звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой