Готовый Astro starter для быстрых SEO-ориентированных сайтов, лендингов, корпоративных страниц и контентных проектов. Собран вокруг одной идеи: минимальный старт без мусора, но с сильной базой по индексации, метаданным, AI-ready файлам, favicon, manifest и валидации.
bun install
bun run devProduction build:
bun run buildПроверки:
bun run check
bun run check:seo
bun run lighthouseВ стартере уже есть заготовки для:
llms.txtai.txtIndexNowsite.webmanifest
Они включаются напрямую через config.features в main.config.ts, без отдельного CLI-пакета.
Этот шаблон уже включает:
- Astro 6 со статической сборкой
- Tailwind CSS v4
- TypeScript strict mode
- React integration для island-компонентов
- централизованный SEO-слой
robots.txt,sitemap,llms.txt,ai.txtsite.webmanifest- favicon pipeline из одного SVG-источника
- подключаемые Google Tag Manager и Yandex Metrika
- Schema.org разметку
- проверку SEO после билда
- Lighthouse CI конфиг
- alias
@/*дляsrc/*
Если коротко: это не просто пустой Astro boilerplate, а стартовая база с уже продуманной технической обвязкой под production.
В проекте уже есть полноценный SEO-компонент, который выставляет:
title,description,canonical- Open Graph
- Twitter Card
robots- verification meta tags
- JSON-LD schema через
astro-seo-schema - favicon, manifest, theme-color, Apple touch icon
Все основные параметры сайта централизованы в main.config.ts.
Стартер сразу генерирует:
/robots.txt/llms.txt/ai.txt
Это полезно для современных поисковых и AI-агентов, которым нужны понятные правила обхода, ссылки на sitemap и карта публичных страниц.
Кладёшь один файл:
public/favicon-180x180.svg
Дальше перед bun run dev автоматически один раз генерируются:
favicon.svgfavicon.icofavicon-16x16.pngfavicon-32x32.pngapple-touch-icon.png
Если исходный SVG не менялся, повторной генерации не будет.
В проекте уже разведены зоны ответственности:
layoutsдля общего каркасаcomponentsдля UI и SEOintegrationsдля технических route/integration модулейstylesдля Tailwind v4 theme layerutilsдля helper-функцийpagesдля роутинга
Это хороший баланс между простотой и готовностью к росту проекта.
В стартере есть готовые компоненты для:
- Google Tag Manager
- Yandex Metrika
Они подключаются через конфиг и не требуют ручной вставки скриптов по проекту.
Есть готовые команды для:
- type check через Astro
- SEO validation собранного
dist - Lighthouse CI
То есть стартер помогает не только быстро стартовать, но и держать техническое качество.
- Astro
- TypeScript
- Tailwind CSS v4
- React
astro-iconastro-meta-tagsastro-seo-schema@astrojs/sitemap@astrojs/mdx
bun install
bun run devСборка production:
bun run buildПроверка типов:
bun run checkSEO-проверка после билда:
bun run check:seoLighthouse CI:
bun run lighthouseРучная генерация favicon:
bun run generate:favicons.
├── astro.config.mjs # Astro config, integrations, static output
├── main.config.ts # Главный конфиг сайта и SEO
├── package.json # Скрипты и зависимости
├── public/
│ ├── apple-touch-icon.png
│ ├── default-ogImage.jpg
│ ├── favicon-16x16.png
│ ├── favicon-32x32.png
│ ├── favicon.ico
│ └── favicon.svg
├── scripts/
│ ├── generate-favicons.mjs # Генерация favicon из одного SVG
│ └── validate-seo.mjs # Проверка метаданных в собранном dist
├── src/
│ ├── components/
│ │ ├── partials/
│ │ │ └── Container.astro # Базовый контейнер layout-слоя
│ │ └── SEO/
│ │ ├── Analytics/
│ │ │ ├── GoogleTagManager.astro
│ │ │ └── YandexMetrika.astro
│ │ └── SEO.astro # Все meta/link/schema теги
│ ├── integrations/
│ │ ├── aiTxt.ts # /ai.txt
│ │ ├── indexNow.ts # IndexNow submit after build
│ │ ├── llmsTxt.ts # /llms.txt
│ │ └── robotsTxt.ts # /robots.txt
│ ├── layouts/
│ │ └── Layout.astro # Главный layout
│ ├── pages/
│ │ ├── 404.astro
│ │ ├── index.astro
│ │ └── site.webmanifest.ts
│ ├── styles/
│ │ └── tailwind.css # Tailwind v4 theme tokens и base styles
│ ├── utils/
│ │ └── lib/
│ │ └── cn.ts # clsx + tailwind-merge helper
│ └── content.config.ts # Заготовка под content collections
└── tsconfig.json
Уже подключены:
- MDX
- React
- Sitemap
- Astro Icon
- Astro Meta Tags
- кастомные integrations для
robots.txt,ai.txt,llms.txt,IndexNow
Дополнительно:
output: "static"prefetchAll: truedefaultStrategy: "viewport"- отключён Astro Dev Toolbar
Одна точка управления для:
site.url- язык и locale
- Open Graph defaults
- theme colors
- verification tags
- analytics IDs
- IndexNow key
Это удобно: перенос проекта на другой домен и бренд обычно сводится к правке одного файла.
Компонент уже умеет:
- собирать корректный
<title> - нормализовать canonical URL
- подставлять OG image по умолчанию
- переключать schema между
WebPageиBlogPosting - добавлять article meta для страниц-статей
- подключать favicon и manifest
- SEO-сайты услуг
- сайты компаний
- личные сайты и портфолио
- лендинги
- контентные проекты и блоги
- сайты, где важны canonical, schema, sitemap и аккуратные метатеги
- не перегружен лишними абстракциями
- уже закрывает базовые техтребования продакшена
- легко адаптируется под новый бренд и домен
- не заставляет вручную собирать SEO-обвязку
- даёт хороший фундамент под дальнейшую разработку
- Заполняют
main.config.ts - Меняют контент главной страницы в
src/pages/index.astro - Кладут свой
public/favicon-180x180.svg - Добавляют OG image и логотип
- Включают GTM или Metrika при необходимости
- блог на Astro Content Collections
- страницы услуг
- MDX-контент
- формы
- React/Solid/Svelte islands
- каталог, FAQ, knowledge base
| Команда | Что делает |
|---|---|
bun run dev |
запускает локальный dev server |
bun run build |
собирает production build |
bun run preview |
локально открывает собранный проект |
bun run check |
запускает astro check |
bun run generate:favicons |
вручную генерирует favicon-файлы |
bun run validate:seo |
проверяет SEO в dist |
bun run check:seo |
билдит проект и запускает SEO validator |
bun run lighthouse |
гоняет Lighthouse CI |
Сделать такой baseline, который можно взять за основу нового проекта и не тратить первые часы на:
- favicon и manifest
- canonical и social meta
- robots и sitemap
- schema markup
- аналитику
- AI/LLM служебные файлы
- SEO smoke-check после сборки
Именно в этом его главная сила.