Skip to content

zamson/sanity-plugin-youtube-input

 
 

Repository files navigation

sanity-plugin-youtube-input

✨ Enriched YouTube video data for Sanity. ✨

Enrich the YouTube videos in your Sanity studio with metadata pulled from Google's YouTube Data API, along with in-studio embeds so you can preview and play videos right in your studio. Enter any valid YouTube video URL and this plugin populates the video's title, description, published date, and supported thumbnails for you.

Installation

npm install sanity-plugin-youtube-input

Setup

Add it as a plugin in sanity.config.ts:

import { defineConfig } from 'sanity'
import { youtubeInput } from 'sanity-plugin-youtube-input'

export default defineConfig({
  plugins: [
    youtubeInput({ apiKey: '<your-google-api-key>' })
  ],
})

You'll need a Google API token with access to the YouTube Data API. If you don't already have one, you can create an API token in the Google API Console. Follow this guide from the YouTube Data API docs if you aren't sure how to do so.

Usage

This plugin adds a youtubeVideo type to your schema. Use this type to create a field for YouTube videos with enriched data, like in this example of a content model for YouTube embeds:

defineType({
  name: 'youtubeEmbed,
  type: 'object',
  fields: [
    {
      name: 'video',
      type: 'youtubeVideo',
    },
    {
      name: 'autoplay',
      type: 'boolean',
      initialValue: false,
    },
    {
      name: 'controls',
      type: 'boolean',
      initialValue: true,
    },
  ]
})

Screenshots

License

MIT © Mitchell Fragala

About

For of sanity-plugin-youtube-input with applied fixes

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 92.1%
  • JavaScript 7.9%