Interface: ThemeFeatures
Defined in: packages/sdk/src/types/generated/theme.ts:17
Capabilities a theme supports.
Lets the builder adapt its UI to the active theme — e.g. hide the Pages tab
for a theme that doesn't render CMS pages, or the locale picker for one
without i18n. Declared statically per theme in lib/themes.py for
hard-coded themes, and in the gravityrail.config.json manifest for
source-site themes (resolved per site).
Properties
admin?
optionaladmin:boolean
Defined in: packages/sdk/src/types/generated/theme.ts:33
Operator/admin-facing surface rather than a public/member site
apiAccess?
optionalapiAccess:boolean
Defined in: packages/sdk/src/types/generated/theme.ts:27
Exposes a runtime API to the rendered site (e.g. grFetch)
auth?
optionalauth:boolean
Defined in: packages/sdk/src/types/generated/theme.ts:29
Supports authenticated (logged-in) members at all
darkMode?
optionaldarkMode:ThemeFeaturesDarkMode
Defined in: packages/sdk/src/types/generated/theme.ts:25
Color-scheme support
dynamicPages?
optionaldynamicPages:boolean
Defined in: packages/sdk/src/types/generated/theme.ts:19
Renders CMS-style pages (the Pages tab)
i18n?
optionali18n:boolean
Defined in: packages/sdk/src/types/generated/theme.ts:21
Renders localized content for multiple locales
locales?
optionallocales:string[] |null
Defined in: packages/sdk/src/types/generated/theme.ts:23
Locales the theme constrains itself to; null means it follows the site's configured locales.
scopes?
optionalscopes:string[]
Defined in: packages/sdk/src/types/generated/theme.ts:35
Permission scopes the theme relies on to function
signup?
optionalsignup:boolean
Defined in: packages/sdk/src/types/generated/theme.ts:31
Supports public self-service signup (implies auth)