跳转到内容

StudioCMSOptions

此内容尚不支持你的语言。

StudioCMS Integration config options schema reference

studiocms.config.mjs
// Default Values shown
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.dbStartPage?: boolean

Project Initialization Page - Used during First Time Setup to initialize the database

@defaulttrue

dbStartPage
: true,
StudioCMSOptions.db?: DBConfigSchema

Database Configuration

db
: {},
StudioCMSOptions.verbose?: boolean

Whether to show verbose output

@defaultfalse

verbose
: false,
StudioCMSOptions.logLevel?: "Info" | "All" | "Fatal" | "Error" | "Warning" | "Debug" | "Trace" | "None"

Set the LogLevel for Effect based code

logLevel
: 'Info',
StudioCMSOptions.plugins?: StudioCMSPlugin[]

Add Plugins to the StudioCMS

plugins
: [],
StudioCMSOptions.componentRegistry?: Record<string, string>

Component Registry

componentRegistry
: {},
StudioCMSOptions.locale?: LocaleConfig

Locale specific settings

locale
: {},
StudioCMSOptions.features?: FeaturesConfig

Allows adjusting the StudioCMS Dashboard features

features
: {}
});

Project initialization page - Used during first time setup to create your database configuration.

  • Type: boolean
  • Default: true
studiocms.config.mjs
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.dbStartPage?: boolean

Project Initialization Page - Used during First Time Setup to initialize the database

@defaulttrue

dbStartPage
: true, // DEFAULT - This injects a start page to setup your DB data.
})

db is an object that is used to configure the database dialect.

  • Type: DBConfigSchema
  • Default: {}
studiocms.config.mjs
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.db?: DBConfigSchema

Database Configuration

db
: {
DBConfigSchema.dialect?: "libsql" | "postgres" | "mysql"

Database Dialect to use

@default'libsql'

dialect
: 'libsql', // 'libsql' | 'postgresql' | 'mysql'
},
})

storageManager is used to configure the storage manager plugin for StudioCMS.

  • Type: StudioCMSStorageManager
  • Default: undefined
studiocms.config.mjs
import
function s3Storage(): StudioCMSStorageManager

Creates and configures a StudioCMS S3 Storage Manager plugin.

This function initializes the S3 storage integration for StudioCMS by defining a storage manager plugin with the necessary configuration and hooks.

@returnsA configured storage manager instance that integrates S3 storage capabilities with StudioCMS.

@example

import { studiocmsS3Storage } from '@studiocms/s3-storage';
const s3Storage = studiocmsS3Storage();

s3Storage
from '@studiocms/s3-storage';
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.storageManager?: StudioCMSStorageManager

Storage Manager Configuration

storageManager
:
function s3Storage(): StudioCMSStorageManager

Creates and configures a StudioCMS S3 Storage Manager plugin.

This function initializes the S3 storage integration for StudioCMS by defining a storage manager plugin with the necessary configuration and hooks.

@returnsA configured storage manager instance that integrates S3 storage capabilities with StudioCMS.

@example

import { studiocmsS3Storage } from '@studiocms/s3-storage';
const s3Storage = studiocmsS3Storage();

s3Storage
(),
})

verbose is a boolean that is used to enable or disable verbose logging.

  • Type: boolean
  • Default: false
studiocms.config.mjs
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.verbose?: boolean

Whether to show verbose output

@defaultfalse

verbose
: false, // DEFAULT - This sets the verbose logging to false.
})

logLevel is a union for setting the LogLevel for Effect based code.

  • Type: All | Fatal | Error | Warning | Info | Debug | Trace | None
  • Default: Info
studiocms.config.mjs
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.logLevel?: "Info" | "All" | "Fatal" | "Error" | "Warning" | "Debug" | "Trace" | "None"

Set the LogLevel for Effect based code

logLevel
: 'Info', // DEFAULT
})

plugins is an array that is used to determine which plugins should be loaded.

  • Type: StudioCMSPlugin[]
  • Default: []
studiocms.config.mjs
import
function blog(options?: StudioCMSBlogOptions): StudioCMSPlugin

Creates and configures the StudioCMS Blog plugin.

@paramoptions - Optional configuration options for the blog plugin.

@returnsThe configured StudioCMS plugin.

@example

const blogPlugin = studioCMSBlogPlugin({
blog: {
title: 'My Blog',
enableRSS: true,
route: '/my-blog'
},
sitemap: true,
injectRoutes: true
});

@paramoptions.blog - Blog-specific options.

@paramoptions.blog.title - The title of the blog. Defaults to 'Blog'.

@paramoptions.blog.enableRSS - Whether to enable RSS feed. Defaults to true.

@paramoptions.blog.route - The route for the blog. Defaults to '/blog'.

@paramoptions.sitemap - Whether to trigger sitemap generation. Defaults to true.

@paramoptions.injectRoutes - Whether to inject routes for the blog. Defaults to true.

blog
from '@studiocms/blog';
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.plugins?: StudioCMSPlugin[]

Add Plugins to the StudioCMS

plugins
: [
function blog(options?: StudioCMSBlogOptions): StudioCMSPlugin

Creates and configures the StudioCMS Blog plugin.

@paramoptions - Optional configuration options for the blog plugin.

@returnsThe configured StudioCMS plugin.

@example

const blogPlugin = studioCMSBlogPlugin({
blog: {
title: 'My Blog',
enableRSS: true,
route: '/my-blog'
},
sitemap: true,
injectRoutes: true
});

@paramoptions.blog - Blog-specific options.

@paramoptions.blog.title - The title of the blog. Defaults to 'Blog'.

@paramoptions.blog.enableRSS - Whether to enable RSS feed. Defaults to true.

@paramoptions.blog.route - The route for the blog. Defaults to '/blog'.

@paramoptions.sitemap - Whether to trigger sitemap generation. Defaults to true.

@paramoptions.injectRoutes - Whether to inject routes for the blog. Defaults to true.

blog
(),
],
})

componentRegistry is an object that is used to register components.

  • Type: Record<string, string>
  • Default: {}
studiocms.config.mjs
export default
function defineStudioCMSConfig(config: StudioCMSOptions): StudioCMSOptions

A utility function to define the StudioCMS config object. This function is used to define the optional StudioCMS config object in the Astro project root. The expected file name is studiocms.config.mjs. And it should be adjacent to the Astro project's astro.config.mjs file.

StudioCMS will attempt to import this file and use the default export as the StudioCMS config object automatically if it exists.

Using this function is optional, but it can be useful for IDEs to provide better intellisense and type checking.

@example

// studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
export default defineStudioCMSConfig({
dbStartPage: true,
// ...Other Options
})

defineStudioCMSConfig
({
StudioCMSOptions.componentRegistry?: Record<string, string>

Component Registry

componentRegistry
: {
'my-component': './src/components/MyComponent.astro',
},
})

locale allows setting Locale specific settings

features is an object that allows adjusting the StudioCMS Dashboard features