Config Reference


The config file

When you provide a file at tina/config.{ts,tsx,js,jsx} that exports a defineConfig function, Tina will automatically generate TinaCMS as a static asset. Note that it must be the default export of this file.

The location for the config file was previously at .tina/config.{ts,tsx,js,jsx}

Definition

PropertyDescription
branchThe branch that will be used to query content on Tina Cloud (Not used in local mode)
clientIdThe ClientId generated on Tina Cloud (Not used in local mode)
tokenA read only token generated on Tina Cloud (Not used in local mode)
buildBuild configuration for storing Tina as a static asset
build.publicFolderThe public asset folder for your framework
build.outputFolderWithin the public asset folder, the desired output location
build.basePathIf your site will be served at a sub-path like my-domain.com/my-site, provide "my-site"
mediaMedia configuration for external and git backed media
schemaThe schema defines the shape of your content.
searchSearch configuration

Example

const branch =
process.env.NEXT_PUBLIC_TINA_BRANCH ||
process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF ||
process.env.HEAD ||
'main'
export default defineConfig({
branch,
token: '<Your Read Only Token>' // generated on app.tina.io
clientId: '<Your Client ID>', // generated on app.tina.io
build: {
publicFolder: 'public', // The public asset folder for your framework
outputFolder: 'admin' // within the public folder
}
// See https://tina.io/docs/reference/schema/ for more information
schema: {
collections: [
//..Array of collections
],
}
})

In this example, the TinaCMS admin will be viewable at <my-site-url>/admin/index.html. For more information check out the content modeling section

Enabling visual editing

We're in the early stages of adding visual editing support in static mode, check back for more details soon!

For NextJS sites, the visual-editing guide is still applicable for static mode, with 2 key differences:

  • The useTina hook should be imported from tinacms/dist/react.
  • Visual mode is only enabled when you visit your site through the Tina CMS iframe. For the example config above, this would be at <my-site-url>/admin/index.html#/preview.

Last Edited: September 29, 2022