Loving Tina? ⭐️ us on GitHubStar

Docs

Learn

v.Latest
Documentation
The /tina Folder
Table of Contents

The /tina folder is where you configure the content models, datalayer (hosting), content repo, queries and other settings important to TinaCMS.

It normally sits at the root of your repo, but other options are available.

File Structure

tina/
├── config.{ts,tsx,js}
├── queries/ <!--optional-->
├── ߺߺgeneratedߺߺ/ <!--created at runtime-->
│ ├── ߺgraphql.json
│ ├── ߺlookup.json
│ ├── ߺschema.json
│ ├── frags.gql
│ ├── queries.gql
│ └── schema.gql
└── tina-lock.json <!--created at runtime-->

The tina-lock.json must be checked into source control and pushed to your repo. It contains a compiled schema used to resolve content documents. Run tinacms dev locally to trigger an update to this file.

The Config File

config.{ts,tsx,js} contains the schema (content model), as well as the Tina configuration object. See the config doc for more details.

The Queries Folder

The queries/ folder is optional and is used by the client for retrieving data. Most data fetching cases will be covered by queries auto-generated by TinaCMS.

Defining additional queries here will attach them to the same query object as those in __generated__/queries.gql.

Generated Files

During the build process, Tina generates a number of files in __generated__/.

Changes made to this directory won't be persisted.

You should ignore this directory from your git repository.

The Graphql AST (represented in JSON).

This is a lookup file that is used to resolve document names.

The Graphql Schema AST (represented in JSON).

Stores all the generated typing for your schema.

Import this file to use strict typing in your project.

The generated data fetching client.

This lightweight client can be used on the backend and the frontend.

Usage instructions for the client can be found in the querying content section.

Contains raw GraphQL fragments used by the data fetching client.

Contains raw GraphQL queries used by the data fetching client.

Contains a GraphQL variant of your schema.

Last Edited: March 25, 2025