Руководство #Руководство#Astro

Начало работы с Astro-Theme-Aither

2026-03-14 · 275 слов · 1 мин

Всё, что нужно для установки, настройки, кастомизации и деплоя Astro-Theme-Aither, на одной странице.

Это руководство проведёт вас от пустого проекта до опубликованного многоязычного блога. Его можно читать по порядку или сразу перейти к нужному разделу.

Что понадобится

  • Node.js 22 LTS или новее
  • pnpm 10 или новее
  • Аккаунт GitHub
  • Аккаунт Cloudflare для деплоя

Установка

Terminal windowBash
git clone https://github.com/YOUR_USERNAME/YOUR_REPO.git
cd YOUR_REPO
corepack enable
pnpm install
pnpm validate
pnpm dev

После этого откройте http://localhost:4321.

Структура проекта

src/
├── components/ # Компоненты Astro и React
├── config/site.ts # Название сайта, навигация, footer, соцссылки
├── content/posts/ # Посты по локалям
├── i18n/ # Переводы интерфейса
├── layouts/ # Layout-компоненты
├── lib/ # Утилиты
├── pages/ # Страницы и маршруты
└── styles/global.css # Токены темы Tailwind v4

Настройка

Site Config

src/config/site.ts — главный источник конфигурации сайта:

export const siteConfig = {
name: 'Название вашего блога',
title: 'Ваш слоган',
description: 'Описание сайта для SEO',
author: {
name: 'Ваше имя',
avatar: '',
},
};

Переменные окружения

Terminal windowBash
cp .env.example .env

Пустые значения просто отключают соответствующую интеграцию.

URL сайта

Продакшн-адрес задаётся в astro.config.mjs:

import { defineConfig } from 'astro/config';
import aither from '@aither/astro';
export default defineConfig({
site: 'https://your-domain.pages.dev',
integrations: [aither()],
});

Написание статей

Создайте новый .mdx файл в src/content/posts/en/:

---
title: Моя первая статья
date: "2026-03-14T16:00:00+08:00"
category: General
description: Краткое описание для SEO и соцсетей.
tags: [Topic, Another]
pinned: false
---
Здесь начинается ваш контент.

Поля frontmatter

ПолеТипОбязательноОписание
titlestringДаЗаголовок статьи
datedateДаВремя публикации (например, 2026-03-14T16:00:00+08:00)
categorystringНетКатегория
descriptionstringНетSEO-описание
tagsstring[]НетСписок тегов
pinnedbooleanНетЗакрепить наверху
imagestringНетОбложка

MDX-компоненты

В контент можно импортировать интерактивные компоненты:

import MyChart from '@/components/MyChart'
<MyChart data={[10, 20, 30]} />

Интернационализация

Тема поддерживает 11 языков из коробки. Чтобы добавить перевод статьи, создайте файл с тем же именем в нужной локали:

src/content/posts/en/my-post.mdx
src/content/posts/ru/my-post.mdx
src/content/posts/zh-hans/my-post.mdx

Тексты интерфейса находятся в src/i18n/messages/.

Пользовательские разделы контента

Можно добавить отдельные коллекции вроде переводов, заметок или туториалов через src/content.config.ts и src/config/site.ts. После этого страницы списков и деталей создадутся автоматически.

Темы и режимы

Система состоит из двух уровней:

  • цветовой режим: light, dark, system
  • стиль темы: default или встроенный стиль вроде evolution
ui: {
defaultMode: 'system',
defaultStyle: 'default',
showMoreThemesMenu: true,
},

Цветовые токены находятся в src/styles/global.css. По умолчанию используется системный sans-serif стек, а для кода — monospace.

SEO и AI

Каждая страница уже предоставляет:

  • /sitemap-index.xml
  • /rss.xml
  • /robots.txt
  • /llms.txt
  • /llms-full.txt
  • /posts/slug.md
  • JSON-LD и Open Graph

Деплой

Cloudflare Pages

Лучшая практика: сначала создайте проект Pages. Процесс по умолчанию использует имя репозитория, а для переопределения можно задать CLOUDFLARE_PAGES_PROJECT_NAME.

Добавьте в GitHub Secrets:

  • CLOUDFLARE_API_TOKEN
  • CLOUDFLARE_ACCOUNT_ID

Затем выполните pnpm validate и только после этого делайте push в main.

Полезные команды

КомандаОписание
pnpm devЗапустить локальный сервер разработки
pnpm validateЗапустить полную валидацию перед push
pnpm buildСобрать производственную версию
pnpm previewПросмотреть производственную сборку локально

Схема версий

Публичные теги релизов используют имена в стиле CalVer, например v2026.04.08.

Конец · Спасибо за чтение

Комментарии