diff --git a/docs/admin/overview.mdx b/docs/admin/overview.mdx index 43ea2eda55..8f0b2c101e 100644 --- a/docs/admin/overview.mdx +++ b/docs/admin/overview.mdx @@ -28,25 +28,25 @@ When bundled, it is code-split, highly performant (even with 100+ fields), and w All options for the Admin panel are defined in your base Payload config file. -| Option | Description | -| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `user` | The `slug` of a Collection that you want be used to log in to the Admin dashboard. [More](/docs/admin/overview#the-admin-user-collection) | -| `buildPath` | Specify an absolute path for where to store the built Admin panel bundle used in production. Defaults to `path.resolve(process.cwd(), 'build')`. | -| `meta` | Base meta data to use for the Admin panel. Included properties are `titleSuffix`, `ogImage`, and `favicon`. | -| `disable` | If set to `true`, the entire Admin panel will be disabled. | -| `indexHTML` | Optionally replace the entirety of the `index.html` file used by the Admin panel. Reference the [base index.html file](https://github.com/payloadcms/payload/blob/main/packages/payload/src/admin/index.html) to ensure your replacement has the appropriate HTML elements. | -| `css` | Absolute path to a stylesheet that you can use to override / customize the Admin panel styling. [More](/docs/admin/customizing-css). | -| `scss` | Absolute path to a Sass variables / mixins stylesheet meant to override Payload styles to make for an easy re-skinning of the Admin panel. [More](/docs/admin/customizing-css#overriding-scss-variables). | -| `dateFormat` | Global date format that will be used for all dates in the Admin panel. Any valid [date-fns](https://date-fns.org/) format pattern can be used. | -| `avatar` | Set account profile picture. Options: `gravatar`, `default` or a custom React component. | -| `autoLogin` | Used to automate admin log-in for dev and demonstration convenience. [More](/docs/authentication/config). | -| `livePreview` | Enable real-time editing for instant visual feedback of your front-end application. [More](/docs/live-preview/overview). | -| `components` | Component overrides that affect the entirety of the Admin panel. [More](/docs/admin/components) | -| `webpack` | Customize the Webpack config that's used to generate the Admin panel. [More](/docs/admin/webpack) | -| `vite` | Customize the Vite config that's used to generate the Admin panel. [More](/docs/admin/vite) | -| **`bundler`** | The bundler that you would like to use to bundle the admin panel. Officially supported bundlers: [Webpack](/docs/admin/webpack) and [Vite](/docs/admin/vite). | -| **`logoutRoute`** | The route for the `logout` page. | -| **`inactivityRoute`** | The route for the `logout` inactivity page. | +| Option | Description | +| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `bundler` | The bundler that you would like to use to bundle the admin panel. Officially supported bundlers: [Webpack](/docs/admin/webpack) and [Vite](/docs/admin/vite). | +| `user` | The `slug` of a Collection that you want be used to log in to the Admin dashboard. [More](/docs/admin/overview#the-admin-user-collection) | +| `buildPath` | Specify an absolute path for where to store the built Admin panel bundle used in production. Defaults to `path.resolve(process.cwd(), 'build')`. | +| `meta` | Base meta data to use for the Admin panel. Included properties are `titleSuffix`, `ogImage`, and `favicon`. | +| `disable` | If set to `true`, the entire Admin panel will be disabled. | +| `indexHTML` | Optionally replace the entirety of the `index.html` file used by the Admin panel. Reference the [base index.html file](https://github.com/payloadcms/payload/blob/main/packages/payload/src/admin/index.html) to ensure your replacement has the appropriate HTML elements. | +| `css` | Absolute path to a stylesheet that you can use to override / customize the Admin panel styling. [More](/docs/admin/customizing-css). | +| `scss` | Absolute path to a Sass variables / mixins stylesheet meant to override Payload styles to make for an easy re-skinning of the Admin panel. [More](/docs/admin/customizing-css#overriding-scss-variables). | +| `dateFormat` | Global date format that will be used for all dates in the Admin panel. Any valid [date-fns](https://date-fns.org/) format pattern can be used. | +| `avatar` | Set account profile picture. Options: `gravatar`, `default` or a custom React component. | +| `autoLogin` | Used to automate admin log-in for dev and demonstration convenience. [More](/docs/authentication/config). | +| `livePreview` | Enable real-time editing for instant visual feedback of your front-end application. [More](/docs/live-preview/overview). | +| `components` | Component overrides that affect the entirety of the Admin panel. [More](/docs/admin/components) | +| `webpack` | Customize the Webpack config that's used to generate the Admin panel. [More](/docs/admin/webpack) | +| `vite` | Customize the Vite config that's used to generate the Admin panel. [More](/docs/admin/vite) | +| `logoutRoute` | The route for the `logout` page. | +| `inactivityRoute` | The route for the `logout` inactivity page. | ### The Admin User Collection diff --git a/docs/configuration/overview.mdx b/docs/configuration/overview.mdx index e943f4f576..848db319af 100644 --- a/docs/configuration/overview.mdx +++ b/docs/configuration/overview.mdx @@ -19,48 +19,53 @@ Payload is a _config-based_, code-first CMS and application framework. The Paylo ## Options -| Option | Description | -| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `serverURL` | A string used to define the absolute URL of your app including the protocol, for example `https://example.com`. No paths allowed, only protocol, domain and (optionally) port | -| `collections` | An array of all Collections that Payload will manage. To read more about how to define your collection configs, [click here](/docs/configuration/collections). | -| `cors` | Either a whitelist array of URLS to allow CORS requests from, or a wildcard string (`'*'`) to accept incoming requests from any domain. | -| `globals` | An array of all Globals that Payload will manage. For more on Globals and their configs, [click here](/docs/configuration/globals). | -| `admin` | Base Payload admin configuration. Specify custom components, control metadata, set the Admin user collection, and [more](/docs/admin/overview#admin-options). | -| `editor` | Default richText editor which will be used by richText fields. | -| `localization` | Opt-in and control how Payload handles the translation of your content into multiple locales. [More](/docs/configuration/localization) | -| `graphQL` | Manage GraphQL-specific functionality here. Define your own queries and mutations, manage query complexity limits, and [more](/docs/graphql/overview#graphql-options). | -| `cookiePrefix` | A string that will be prefixed to all cookies that Payload sets. | -| `csrf` | A whitelist array of URLs to allow Payload cookies to be accepted from as a form of CSRF protection. [More](/docs/authentication/overview#csrf-protection) | -| `defaultDepth` | If a user does not specify `depth` while requesting a resource, this depth will be used. [More](/docs/getting-started/concepts#depth) | -| `maxDepth` | The maximum allowed depth to be permitted application-wide. This setting helps prevent against malicious queries. Defaults to `10`. | -| `indexSortableFields` | Automatically index all sortable top-level fields in the database to improve sort performance and add database compatibility for Azure Cosmos and similar. | -| `upload` | Base Payload upload configuration. [More](/docs/upload/overview#payload-wide-upload-options). | -| `routes` | Control the routing structure that Payload binds itself to. Specify `admin`, `api`, `graphQL`, and `graphQLPlayground`. | -| `email` | Base email settings to allow Payload to generate email such as Forgot Password requests and other requirements. [More](/docs/email/overview#configuration) | -| `express` | Express-specific middleware options such as compression and JSON parsing. [More](/docs/configuration/express) | -| `debug` | Enable to expose more detailed error information. | -| `telemetry` | Disable Payload telemetry by passing `false`. [More](/docs/configuration/overview#telemetry) | -| `rateLimit` | Control IP-based rate limiting for all Payload resources. Used to prevent DDoS attacks and [more](/docs/production/preventing-abuse#rate-limiting-requests). | -| `hooks` | Tap into Payload-wide hooks. [More](/docs/hooks/overview) | -| `plugins` | An array of Payload plugins. [More](/docs/plugins/overview) | -| `endpoints` | An array of custom API endpoints added to the Payload router. [More](/docs/rest-api/overview#custom-endpoints) | -| `custom` | Extension point for adding custom data (e.g. for plugins) | +| Option | Description | +| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `admin` \* | Base Payload admin configuration. Specify bundler*, custom components, control metadata, set the Admin user collection, and [more](/docs/admin/overview#admin-options). Required. | +| `editor` \* | Rich Text Editor which will be used by richText fields. Required. | +| `db` \* | Database Adapter which will be used by Payload. Read more [here](/docs/database/overview). Required. | +| `serverURL` | A string used to define the absolute URL of your app including the protocol, for example `https://example.com`. No paths allowed, only protocol, domain and (optionally) port | +| `collections` | An array of all Collections that Payload will manage. To read more about how to define your collection configs, [click here](/docs/configuration/collections). | +| `globals` | An array of all Globals that Payload will manage. For more on Globals and their configs, [click here](/docs/configuration/globals). | +| `cors` | Either a whitelist array of URLS to allow CORS requests from, or a wildcard string (`'*'`) to accept incoming requests from any domain. | +| `localization` | Opt-in and control how Payload handles the translation of your content into multiple locales. [More](/docs/configuration/localization) | +| `graphQL` | Manage GraphQL-specific functionality here. Define your own queries and mutations, manage query complexity limits, and [more](/docs/graphql/overview#graphql-options). | +| `cookiePrefix` | A string that will be prefixed to all cookies that Payload sets. | +| `csrf` | A whitelist array of URLs to allow Payload cookies to be accepted from as a form of CSRF protection. [More](/docs/authentication/overview#csrf-protection) | +| `defaultDepth` | If a user does not specify `depth` while requesting a resource, this depth will be used. [More](/docs/getting-started/concepts#depth) | +| `maxDepth` | The maximum allowed depth to be permitted application-wide. This setting helps prevent against malicious queries. Defaults to `10`. | +| `indexSortableFields` | Automatically index all sortable top-level fields in the database to improve sort performance and add database compatibility for Azure Cosmos and similar. | +| `upload` | Base Payload upload configuration. [More](/docs/upload/overview#payload-wide-upload-options). | +| `routes` | Control the routing structure that Payload binds itself to. Specify `admin`, `api`, `graphQL`, and `graphQLPlayground`. | +| `email` | Base email settings to allow Payload to generate email such as Forgot Password requests and other requirements. [More](/docs/email/overview#configuration) | +| `express` | Express-specific middleware options such as compression and JSON parsing. [More](/docs/configuration/express) | +| `debug` | Enable to expose more detailed error information. | +| `telemetry` | Disable Payload telemetry by passing `false`. [More](/docs/configuration/overview#telemetry) | +| `rateLimit` | Control IP-based rate limiting for all Payload resources. Used to prevent DDoS attacks and [more](/docs/production/preventing-abuse#rate-limiting-requests). | +| `hooks` | Tap into Payload-wide hooks. [More](/docs/hooks/overview) | +| `plugins` | An array of Payload plugins. [More](/docs/plugins/overview) | +| `endpoints` | An array of custom API endpoints added to the Payload router. [More](/docs/rest-api/overview#custom-endpoints) | +| `custom` | Extension point for adding custom data (e.g. for plugins) | + +_\* An asterisk denotes that a property is required._ #### Simple example ```ts import { buildConfig } from 'payload/config' import { mongooseAdapter } from '@payloadcms/db-mongodb' -import { postgresAdapter } from '@payloadcms/db-postgres' +import { postgresAdapter } from '@payloadcms/db-postgres' // beta import { viteBundler } from '@payloadcms/bundler-vite' import { webpackBundler } from '@payloadcms/bundler-webpack' -import { lexicalEditor } from '@payloadcms/richtext-lexical' +import { lexicalEditor } from '@payloadcms/richtext-lexical' // beta import { slateEditor } from '@payloadcms/richtext-slate' export default buildConfig({ - bundler: webpackBundler() // or viteBundler(), + admin: { + bundler: webpackBundler(), // or viteBundler() + }, db: mongooseAdapter({}) // or postgresAdapter({}), editor: lexicalEditor({}) // or slateEditor({}) collections: [