Розробка кастомних плагінів Sanity Studio

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Розробка кастомних плагінів Sanity Studio
Складна
~3-5 робочих днів
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Розробка кастомних плагінів Sanity Studio

Плагін Sanity Studio — npm-пакет, що додає в Studio нові інструменти, поля, компоненти, дії. Реєструється через масив plugins у sanity.config.ts. Офіційні плагіни (@sanity/vision, @sanity/media) побудовані за тією ж схемою.

definePlugin — основа

// src/index.ts
import { definePlugin } from 'sanity'
import { MyTool } from './components/MyTool'

export const myPlugin = definePlugin((config = {}) => {
  return {
    name: 'my-plugin',
    tools: [
      {
        name: 'my-dashboard',
        title: 'Dashboard',
        icon: () => '📊',
        component: MyTool,
      },
    ],
  }
})

Tool компонент

// src/components/MyTool.tsx
import { useState, useEffect } from 'react'
import { useClient } from 'sanity'

export function MyTool() {
  const client = useClient({ apiVersion: '2024-01-01' })
  const [stats, setStats] = useState<any>(null)

  useEffect(() => {
    async function fetchStats() {
      const posts = await client.fetch(`count(*[_type == "post"])`)
      setStats({ posts })
    }
    fetchStats()
  }, [client])

  return (
    <div style={{ padding: 24 }}>
      <h2>Content Dashboard</h2>
      <div style={{ fontSize: 32, fontWeight: 700 }}>
        {stats?.posts || 0}
      </div>
      <p>Опубліковані статті</p>
    </div>
  )
}

Document Badge

// src/badges/seoStatus.ts
import type { DocumentBadgeComponent } from 'sanity'

export const seoBadge: DocumentBadgeComponent = props => {
  const { published } = props

  if (!published) return null

  const hasAllMeta = published.seoTitle && published.seoDescription

  return hasAllMeta
    ? { label: 'SEO ✓', color: 'success' }
    : { label: 'SEO missing', color: 'warning' }
}

Терміни

Розробка плагіна з дашбордом, кастомними actions та badges — 4–6 днів.