Astro CMS · для клиентских сайтов
Astro CMS, созданная для клиентских сайтов
jtakeit — Astro CMS для разработчиков: клиент редактирует сайт, нажимая на текст прямо на странице, код остаётся в вашем git-репозитории, а формы заявок и онлайн-запись уже включены.
// src/content/blocks.ts — what the owner may edit
{
type: 'hero',
v: 1,
label: 'Opening screen',
fields: [
{ key: 'title', label: 'Heading', kind: 'text',
max: 80, client_editable: true },
{ key: 'lead', label: 'Subheading', kind: 'textarea',
max: 240, client_editable: true },
],
}01/ каталог
CMS для Astro, которая читает каталог, а не ваши компоненты
Ваши компоненты могут выглядеть как угодно. Панели не нужно в них разбираться: она читает каталог сайта — список того, что может редактировать владелец, — который генерируется из проекта и сверяется с собранными страницами в обе стороны.
---
import { readPage } from '../lib/page';
const page = readPage('/');
const { at, of } = page.block('hero');
---
<h1 data-jtk-path={page.pathAt(at, 'title')}>
{page.str(of, 'title')}
</h1>{
"path": "/",
"seo": { "title": "…", "description": "…" },
"blocks": [
{ "type": "hero", "v": 1,
"title": "Fresh bread from six",
"lead": "Order by noon, collect tomorrow." }
]
}- Объявлено, но не выведено — элемент управления, который ничего не меняет. Проверка его не пропустит.
- Выведено, но не объявлено — текст, который владелец видит, но не может изменить. Такое проверка тоже не пропустит.
02/ git, а не API
Контент в git, а не прикрученная headless CMS для Astro
Headless CMS хранит контент в своей базе данных и отдаёт его через API — это удобно, когда контент-команда публикует в много каналов. У клиентского сайта один владелец и один сайт, и jtakeit хранит его в репозитории, который у вас уже есть.
| Типичная headless CMS | jtakeit | |
|---|---|---|
| Опубликованный контент | В базе данных CMS, загружается через её API | JSON-файлы в вашем репозитории |
| Черновики | В CMS | В базе данных платформы |
| Сохранение | Обновление записи | Коммит |
| Где редактирует владелец | В отдельной форме админки | Прямо на странице, нажимая на текст |
| Сайт в состоянии на март | Зависит от истории изменений CMS | Одна команда в git |
03/ что нужно клиентскому сайту
Что должна уметь лучшая CMS для клиентских сайтов на Astro
Редактирование — лишь половина клиентского сайта. Вторая половина — что происходит после того, как посетитель его прочитал, и что происходит, когда клиент решает уйти.
Правки без поломок
Владелец нажимает на текст на странице и заполняет только то, что объявлено в каталоге. Кнопок «добавить страницу» и «добавить блок» нет — намеренно.
Сначала превью, потом оплата
Клиент получает превью настоящего сайта и согласовывает его до оплаты.
Формы заявок
Формы защищены от спама, а заявки приходят в Telegram, на email или во входящие админ-панели.
Онлайн-запись
Модуль записи принимает оплаченные бронирования прямо в собственный Stripe бизнеса.
Возможность уйти
Заявки и записи выгружаются в CSV и JSON, действующая подписка для этого не нужна. Когда она заканчивается, ничего не удаляется.
Защита SEO
Сборка с noindex, robots.txt, закрывающим сайт от поисковиков, пустым sitemap или canonical на чужом хосте не пройдёт.
04/ пишет ваш агент
CMS для Astro, которую может написать ваш AI-агент
Всё в ней — файлы: страницы, объявление того, что может редактировать владелец, контент. Поэтому агент, который пишет сайт, сам же определяет, что может редактировать владелец, а MCP-сервер jtakeit позволяет ему проверить каталог, собрать сайт, открыть превью и пройти preflight ещё до того, как сайт увидит человек. Astro — заготовка, которую даёт jtakeit, но не единственный вариант: Next.js в режиме статического экспорта, Nuxt, SvelteKit, Eleventy или Vite тоже подходят.
$ npx @jtakeit/astro catalogue
# writes jtk/catalogue.json, builds the site,
# and checks the catalogue against every page05/ переход с wordpress
С WordPress на Astro — а клиент по-прежнему редактирует сайт
Переход клиента с WordPress на Astro обычно лишает его привычной админки. С jtakeit он продолжает редактировать — прямо на странице, — а сайт становится статическим, и обновлять плагины больше не нужно.
Подробнее — в материале jtakeit как альтернатива WordPress для разработчиков; а как всё складывается вместе, смотрите на странице CMS для разработчиков.
06/ вопросы
Вопросы об Astro CMS
- Есть ли у Astro своя CMS?
- Собственной CMS в Astro нет. Он берёт контент из файлов или из любого подключённого источника. jtakeit добавляет CMS, заточенную под клиентские сайты: владелец редактирует текст прямо на живой странице, а что именно ему можно редактировать, объявляется в репозитории.
- Какая CMS лучше всего подходит для клиентских сайтов на Astro?
- Для сайта, который вы передаёте клиенту, важны три вещи: владелец может редактировать, не имея возможности сломать дизайн; код остаётся в вашем репозитории; формы и онлайн-запись работают без сторонних сервисов. jtakeit построен ровно вокруг этих трёх пунктов.
- jtakeit работает через git или через API?
- Через git. Опубликованный контент — это JSON в собственном репозитории сайта, и каждое сохранение — коммит. В базе данных платформы хранятся только черновики. Страницы читают контент во время сборки, никакого API контента вызывать не нужно.
- Могут ли клиенты сломать дизайн?
- Нет. Владелец может заполнять только поля, объявленные в каталоге, нажимая на них на странице. Кнопки, чтобы добавить страницу или блок, нет, поэтому структура, вёрстка и стили остаются в вашем коде и меняются только коммитом.
- Подойдёт ли он для существующего Astro-проекта?
- Astro-сайты на jtakeit начинаются с заготовки Astro от jtakeit, в которой заложен контракт, по которому собирает платформа; существующие компоненты и страницы можно перенести в неё, а каждое поле, которое может редактировать владелец, объявляется в проекте. Подойдёт и другой генератор статических сайтов, разложенный по тому же контракту.
07/ бесплатно
Попробуйте Astro CMS на клиентском сайте
Зарегистрируйтесь в панели и сделайте первый клиентский сайт. Разработка и превью ничего не стоят — оптовую цену вы платите, только когда сайт запущен.
Попробовать бесплатноadmin.jtakeit.com
- Бесплатно, пока сайт не запущен
- Затем — оптовая цена за запущенный сайт, от €5 в месяц
- Код остаётся в вашем git-репозитории