Skip to content

Latest commit

 

History

History
98 lines (72 loc) · 5.45 KB

File metadata and controls

98 lines (72 loc) · 5.45 KB

Sanity Plugins Monorepo

This monorepo is the home for Sanity Studio plugins maintained by Sanity staff and the community. It provides a centralized place for developing, testing, and publishing plugins that extend Sanity Studio's functionality.

Repository Structure

.
├── plugins/           # Sanity Studio plugins
├── packages/          # Shared packages and utilities
│   └── @repo/          # Internal monorepo utilities (not published)
└── dev/
    └── test-studio    # Local Sanity Studio for testing plugins

Plugins (./plugins)

This is where all Sanity Studio plugins live.

Packages (./packages)

The packages folder contains two types of packages:

  1. Published utilities - Helpful libraries used by plugins that are published to npm
  2. Internal packages (@repo/*) - Shared configurations for tooling (TypeScript, ESLint, etc.) that are not published to npm and are only used within this monorepo

Getting Started

Prerequisites

  • Node.js (latest LTS)
  • pnpm v10 or later (managed via corepack)

Installation

# Enable corepack for automatic pnpm version management
corepack enable

# Install dependencies
pnpm install

Development

# Start the test studio for local development
pnpm dev

# Run linting and type checking
pnpm lint

# Build all packages
pnpm build

# Format code (this also runs through a pre-commit git hook)
pnpm format

Current Plugins

Plugin Description
@sanity/assist AI-powered writing and translation assistance for Studio
@sanity/code-input Code editor input powered by CodeMirror
@sanity/color-input Color picker input for Sanity Studio
@sanity/debug-live-sync-tags Debug tool for inspecting live sync tags
@sanity/debug-preview-url-secret-plugin Debug tool for preview URL secrets and their status
@sanity/document-internationalization Document-level translations linked by a shared reference
@sanity/language-filter Filter localized fields by language
@sanity/presets Experimental preset patterns for Sanity Studio
@sanity/rich-date-input Timezone-aware datetime input for Sanity Studio
@sanity/studio-secrets Manage Studio secrets at runtime
@sanity/vercel-protection-bypass Setup tool for Vercel Deployment Protection in previews
sanity-plugin-aprimo Aprimo asset selector integration
sanity-plugin-asset-source-unsplash Use Unsplash images directly in Sanity Studio
sanity-plugin-bynder-input Bynder asset picker integration
sanity-plugin-graph-view Visual graph tool for exploring content relationships
sanity-plugin-iframe-pane Display external URLs in a Studio pane
sanity-plugin-internationalized-array Store localized fields in arrays to save attributes
sanity-plugin-markdown Markdown editor input
sanity-plugin-workflow Custom content publishing workflow example
sanity-plugin-workspace-home Home screen for multi-workspace studios

Contributing

We welcome contributions! Please see CONTRIBUTING.md for detailed guidelines on:

License

MIT © Sanity.io