sourcebit-source-sanity
👩🏫 Introduction
With this plugin, you can add Sanity as a data source for Sourcebit. To connect your Sanity account, you need an API token, your project ID and the name of your dataset.
🏗 Installation
To install the plugin and add it to your project, run:
npm install sourcebit-source-sanity --save
💡 You don't need to run this command if you start Sourcebit using the interactive setup process, as the CLI will install the plugin for you and add it as a dependency to your project.
⚙️ Configuration
The plugin accepts the following configuration parameters. They can be supplied in any of the following ways:
- In the
options
object of the plugin configuration block insidesourcebit.js
, with the value of the Property column as a key; - As an environment variable named after the Env variable column, when running the
sourcebit fetch
command; - As part of a
.env
file, with the value of the Env variable column separated by the value with an equals sign (e.g.MY_VARIABLE=my-value
); - As a CLI parameter, when running the
sourcebit fetch
command, using the value of the Parameter column as the name of the parameter (e.g.sourcebit fetch --my-parameter
).
Property | Type | Visibility | Default value | Env variable | Parameter | Description |
---|---|---|---|---|---|---|
accessToken |
String | Private | SANITY_ACCESS_TOKEN |
The Sanity API token. | ||
dataset |
String | Public | The name of the dataset. | |||
isPreview |
Boolean | Public | false |
Whether to include draft/unpublished entries. | ||
query |
String | Public | "*[]" |
The query to pass to the Sanity API. | ||
queryParameters |
Object | Public | {} |
The query parameters to pass to the Sanity API. | ||
projectId |
String | Public | The ID of the Sanity project. | |||
richTextOutputFormat |
String | Public | html |
The format to convert rich-text fields to. Accepted values: html , markdown and none . |
||
useCdn |
Boolean | Public | false |
Whether to use the Data API CDN. | ||
watch |
Boolean | Public | watch |
Whether to poll Sanity for content changes. |
👀 Example configuration
sourcebit.js
module.exports = {
plugins: [
{
module: require('sourcebit-source-sanity'),
options: {
accessToken: process.env['SANITY_ACCESS_TOKEN'],
dataset: 'production',
projectId: '1q2w3e4r'
}
}
]
};
.env
SANITY_ACCESS_TOKEN=123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
🧞♂️ Interactive setup process
This plugin offers an interactive setup process via the npx create-sourcebit
command.
📥 Input
N/A
📤 Output
This plugin adds normalized entries to the objects
data bucket.