Новые изменения файла AGENTS.md
This commit is contained in:
parent
f6f2fb3a35
commit
5b0d417183
1 changed files with 64 additions and 0 deletions
64
AGENTS.md
64
AGENTS.md
|
|
@ -50,6 +50,70 @@
|
|||
11. **Замена хоста при развертывании проекта**
|
||||
- Обязательно нужно изменить http://localhost:3000/ в шаблонах писем на реальный
|
||||
|
||||
## Технические правила (Astro)
|
||||
|
||||
1. **Structure проекта**
|
||||
- Использовать рекомендуемую структуру Astro: src/components/, src/layouts/, src/pages/, src/styles/
|
||||
- Файлы конфигурации: astro.config.mjs
|
||||
|
||||
2. **Разработка компонентов**
|
||||
- Создавать .astro файлы для компонентов
|
||||
- Использовать framework-specific компоненты (React, Vue, Svelte) при необходимости
|
||||
- Использовать props для передачи данных
|
||||
- Использовать встроенные компоненты Astro (<Markdown /> и т.д.)
|
||||
|
||||
3. **Роутинг и страницы**
|
||||
- Использовать file-based routing в src/pages/
|
||||
- Реализовывать динамические маршруты через [...slug].astro синтаксис
|
||||
- Использовать getStaticPaths() для генерации статических страниц
|
||||
- Создать страницу 404.astro для обработки ошибок
|
||||
|
||||
4. **Контент**
|
||||
- Использовать Markdown (.md) или MDX (.mdx) для контентных страниц
|
||||
- Использовать frontmatter в Markdown файлах
|
||||
- Использовать content collections для организации контента
|
||||
|
||||
5. **Стилизация**
|
||||
- Использовать scoped styling с <style> тегами в .astro файлах
|
||||
- Использовать Tailwind CSS с интеграцией @astrojs/tailwind
|
||||
- Использовать Tailwind утилитарные классы
|
||||
- Использовать responsive дизайн (sm:, md:, lg: и т.д.)
|
||||
- НИКОГДА не использовать директиву @apply
|
||||
|
||||
6. **Оптимизация производительности**
|
||||
- Минимизировать client-side JavaScript
|
||||
- Использовать client:* директивы для partial hydration:
|
||||
- client:load для immediately needed interactivity
|
||||
- client:idle для non-critical interactivity
|
||||
- client:visible для components that should hydrate when visible
|
||||
- Использовать lazy loading для изображений
|
||||
- Использовать Astro Image component
|
||||
|
||||
7. **Data Fetching**
|
||||
- Использовать Astro.props для передачи данных
|
||||
- Использовать getStaticPaths() для fetching данных на этапе сборки
|
||||
- Использовать Astro.glob() для работы с локальными файлами
|
||||
|
||||
8. **SEO и Meta теги**
|
||||
- Использовать <head> тег для добавления meta информации
|
||||
- Реализовать canonical URLs
|
||||
- Использовать <SEO> компонент для reusable SEO
|
||||
|
||||
9. **Accessibility**
|
||||
- Использовать семантический HTML
|
||||
- Использовать ARIA атрибуты где необходимо
|
||||
- Обеспечить keyboard navigation поддержку
|
||||
|
||||
10. **Тестирование**
|
||||
- Реализовать unit тесты для utility функций
|
||||
- Использовать end-to-end тестирование (Cypress)
|
||||
- Реализовать visual regression тестирование если применимо
|
||||
|
||||
11. **Метрики производительности**
|
||||
- Приоритизировать Core Web Vitals (LCP, FID, CLS)
|
||||
- Использовать Lighthouse и WebPageTest для аудита производительности
|
||||
- Реализовать performance budgets
|
||||
|
||||
## Ccылки на документацию
|
||||
- URL документации Astro: https://docs.astro.build/en/getting-started/
|
||||
- URL документации PocketBase: https://pocketbase.io/docs/
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue