Контентный сайт на Astro: библиотека «Полка»
Собираем статическую Markdown-библиотеку «Полка» на Astro 7.3.8 и Node.js не ниже 22.12.0. Поздние этапы используют sitemap 3.7.4. Начинаем с коллекции и маршрута статьи, затем добавляем общую оболочку, каталог, старые адреса, ресурсы, поиск и договор выпуска.
Нужны основы HTML, CSS и JavaScript и понимание TypeScript-типов. Архив содержит четырнадцать полных состояний. Выбирайте одну папку lesson-NN, не смешивая файлы разных этапов.
| Урок | Результат |
|---|---|
| 1. Статическая библиотека на Astro | Подготовить закреплённый проект «Полка» с одной статической страницей. |
| 2. Markdown и контракт коллекции | Описать loader и схему данных для пяти учебных материалов. |
| 3. Страница статьи из записи коллекции | Сгенерировать самостоятельный маршрут и отобразить тело Markdown. |
| 4. Общий layout, хедер и футер | Выделить оболочку страниц, canonical и навигацию. |
| 5. Каталог и тематические разделы | Собрать списки из единой выборки опубликованных материалов. |
| 6. Пагинация без пропуска материалов | Разбить отсортированный каталог на страницы с обычными ссылками. |
| 7. Прежние адреса и карта соответствий | Отделить ID записи от адреса и описать серверную совместимость старых PHP URL. |
| 8. Иллюстрации и статические ресурсы | Добавить локальную иллюстрацию с размерами и понятным альтернативным текстом. |
| 9. Локальная интерактивность и острова | Встроить независимый custom element без гидратации всей страницы. |
| 10. Статический поисковый индекс | Сгенерировать JSON-индекс и вывести результаты безопасными DOM-операциями. |
| 11. Порядок уроков и оглавление статьи | Согласовать предыдущий и следующий урок с явной учебной последовательностью. |
| 12. Карта сайта и управление индексированием | Сгенерировать sitemap только для публичных маршрутов и отделить локальную среду. |
| 13. Черновики и редакционный маршрут | Добавить материал по договорённой схеме без случайного попадания черновиков в выдачу. |
| 14. Статический выпуск и передача сборки | Описать переносимый выпуск, контракт старых URL и восстановление без публикации. |
Все материалы опубликованы. Установка, выполнение учебных программ, браузерные сценарии, тесты и публикация учебных приложений не проводились.