tuqo
Headless CMS

Tuqo + Sanity

Sanity — headless CMS: контент редактируется в удобной студии, а сайт получает его по API. Со статик-сайтом на Tuqo есть два пути: тянуть контент на этапе сборки (build) и получать полностью статичные страницы, либо запрашивать его в браузере по публичному projectId. Tuqo раздаёт готовую статику по HTTPS — серверного кода не требуется.

Статик-фронт на Tuqo + Sanity напрямую из браузера · бесплатный SSL

Что даёт связка Tuqo + Sanity

  • Удобная студия редактирования контента (Sanity Studio)
  • Контент по API (GROQ) — на этапе сборки или в браузере
  • Структурированный контент и медиа в одном месте
  • Чистая статика на выходе — быстро и без бэкенда
1

Создайте проект Sanity

Заведите проект и схемы контента в Sanity, возьмите projectId и dataset (обычно production).

2

Откройте доступ на чтение

Для публичного контента сделайте dataset публичным (read) или используйте read-токен только на этапе сборки, не в браузере.

3

Получите контент

На сборке (Astro/Vite/SSG) запросите данные через GROQ и сгенерируйте страницы; либо тяните контент в браузере по публичному projectId.

4

Задеплойте на Tuqo

Соберите сайт и выложите статику — для сборочного проекта Tuqo соберёт его на Node, для готовой статики деплой мгновенный.

import { createClient } from '@sanity/client'

// projectId и dataset публичны; read-токен (если нужен) — ТОЛЬКО на этапе сборки
const client = createClient({
  projectId: 'xxxx',
  dataset: 'production',
  apiVersion: '2024-01-01',
  useCdn: true,
})

const posts = await client.fetch('*[_type == "post"]{ title, slug }')

Безопасность

projectId и dataset публичны по дизайну — их можно держать в коде. Если читаете контент в браузере, dataset должен быть публичным на чтение. Write-токены и приватные read-токены — секреты: их используют ТОЛЬКО на этапе сборки (build) или на сервере, в статик-сайт класть нельзя. Самый безопасный путь — тянуть контент на сборке и отдавать готовую статику.

Tuqo раздаёт фронт по HTTPS и не касается ваших данных и секретов сервиса.

Tuqo + Sanity — частые вопросы

Контент тянется на сборке или в браузере? +

Можно и так, и так. На сборке — полностью статичные страницы (быстрее и приватнее токены). В браузере — динамичнее, но dataset должен быть публичным на чтение.

Нужен ли свой бэкенд? +

Нет. Sanity — это и есть бэкенд для контента. Tuqo раздаёт собранную статику; сборочный проект соберёт сам, готовую статику опубликует мгновенно.

Где хранить токены Sanity? +

Write- и приватные read-токены — только на этапе сборки или на сервере, никогда в статик-сайте. Для публичного контента токен не нужен вовсе.

Другие интеграции