Starlight 0.39

Автор
Chris Swithinbank

Starlight — официальный пакет Astro для быстрых и доступных сайтов документации со всеми нужными функциями из коробки.

Что нового в этом релизе:

Чтобы обновить существующий сайт на Starlight, используйте автоматизированный CLI @astrojs/upgrade. Он обновит Starlight, Astro и другие интеграции:

npx @astrojs/upgrade

Подробности миграции и breaking changes — в CHANGELOG Starlight.

Flexible sidebar autogeneration

Starlight с первого дня поддерживает генерацию ссылок навигации sidebar из директорий контента. Этот релиз добавляет гибкости в работу этой функции.

Раньше автогенерация всегда создавала именованную группу в sidebar для указанной директории. В v0.39 автогенерируемые ссылки Starlight можно комбинировать с любыми другими типами ссылок.

Если у вас уже есть автогенерируемые группы в sidebar, обновите их, обернув конфигурацию в массив items:

astro.config.mjs
starlight({
sidebar: [
{
label: 'My group',
autogenerate: { directory: 'some-dir' },
items: [{ autogenerate: { directory: 'some-dir' } }],
},
],
// ...
}),

Это упрощает сочетание автогенерации с разными типами ссылок. Например, теперь можно добавить разовые кастомные ссылки рядом с автогенерируемыми. Следующий пример группирует локальную страницу, все страницы в директории features и внешнюю ссылку:

starlight({
sidebar: [
{
label: 'Features',
items: [
// A page not in the features directory
'features-overview',
// All pages in the features directory
{ autogenerate: { directory: 'features' } },
// An external link
{ label: 'Support', link: 'https://support.example.com' },
],
},
],
// ...
}),

Styling improvements

Современный CSS упрощает жизнь с каждым днём — и в этом релизе мы используем его по полной.

  • Улучшили отступы вложенных списков в контенте благодаря магии :has(). (Посмотрите полный селектор — он впечатляет.)
  • При раскрытии или сворачивании группы sidebar, вызывающем overflow, sidebar Starlight стал стабильнее. Мы избавились от layout shift с помощью scrollbar-gutter: stable.

Better multilingual sites

Интернационализация Starlight была важна с самого начала, и мы постоянно её развиваем. В этом релизе:

  • Улучшенное мультиязычное SEO с мета-ссылками x-default на страницы локали по умолчанию. Эти alternate-ссылки используются поисковиками как сигнал, на какой язык переключаться, если другой недоступен.
  • Лучшая вёрстка текста в китайской и японской документации благодаря CSS-свойству text-autospace. Это новое CSS-свойство делает текст читабельнее, автоматически добавляя пробелы между CJK и не-CJK символами.
  • Мы обновили i18next — библиотеку, на которой работают API локализации Starlight, с v23 до v26.

Community

Команда Astro core:

Alexander Niebuhr, Armand Philippot, Chris Swithinbank, Emanuele Stoppa, Erika, Florian Lefebvre, Fred Schott, HiDeoo, Luiz Ferraz, Matt Kane, Matthew Phillips, Reuben Tier, Sarah Rainsberger, and Yan Thomas.

Спасибо всем, кто внёс вклад в недавние релизы PR и ревью: alomtvassam-ui, Andreas Deininger, Andriy Massimilla, Bugo, Elian, Felix Schneider, gesslar, Ian Trewella, John Goodliff, Joost de Valk, Josef Ježek, Junseong Park, Kevin Z, Linus Grolmes, Luke Hsiao, Maxime Mangel, MilesChou, Patrick Schratz, Paweł Cisło, Roman, Sakku, Shinya Fujino, Swapnil Jain, Tatsunori Uchino, vincent, Vojtěch Křižan и Woody Chang.

Ждём, что вы построите со Starlight! Вопросы, комментарии или просто «привет» — в Astro Discord.