--- id: site-config title: siteConfig.js --- A large part of site configuration is done by editing the `siteConfig.js` file. ## User Showcase The `users` array is used to store objects for each project/user that you want to show on your site. Currently this field is used by example the `pages/en/index.js` and `pages/en/users.js` files provided. Each user object should have `caption`, `image`, `infoLink`, and `pinned` fields. The `caption` is the text showed when someone hovers over the `image` of that user, and the `infoLink` is where clicking the image will bring someon. The `pinned` field determines whether or not it shows up on the `index` page. Currently this `users` array is used only by the `index.js` and `users.js` example files. If you do not wish to have a users page or show users on the `index` page, you may remove this section. ## siteConfig Fields The `siteConfig` object contains the bulk of the configuration settings for your website. ### Mandatory Fields `title` - Title for your website. `tagline` - Tagline for your website. `url` - url for your site. `baseUrl` - baseUrl for your site. `projectName` - Project name. This must match your GitHub repo project name (case sensitive). `noIndex` - Boolean. If true, Docusaurus will politely ask crawlers and search engines to avoid indexing your site. This is done with a header tag and so only applies to docs and pages. Will not attempt to hide static resources. This is a best effort request. Malicious crawlers can and will still index your site. `headerLinks` - Links that will be used in the header navigation bar. The `label` field of each object will be the link text and will also be translated for each language. Example Usage: ```js headerLinks: [ // Links to document with id doc1 for current language/version { doc: "doc1", label: "Getting Started" }, // Link to page found at pages/en/help.js or if that does not exist, pages/help.js, for current language { page: "help", label: "Help" }, // Links to href destination { href: "https://github.com/", label: "GitHub" }, // Links to blog generated by Docusaurus (${baseUrl}blog) { blog: true, label: "Blog" }, // Determines search bar position among links { search: true }, // Determines language drop down position among links { languages: true } ], ``` `headerIcon` - url for icon used in header navigation bar. `favicon` - url for site favicon. `colors` - Color configurations for the site. - `primaryColor` is the color used the header navigation bar and sidebars. - `secondaryColor` is the color seen in the second row of the header navigation bar when the site window is narrow (including on mobile). - Custom color configurations can also be added. For example, if user styles are added with colors specified as `$myColor`, then adding a `myColor` field to `colors` will allow you to easily configure this color. `copyright` - The copyright string at footer of site and within feed ### Optional Fields `editUrl` - url for editing docs, usage example: `editUrl + 'en/doc1.md'`. If this field is omitted, there will be no "Edit this Doc" button for each document. `users` - The `users` array mentioned earlier. `disableHeaderTitle` - An option to disable showing the title in the header next to the header icon. Exclude this field to keep the header as normal, otherwise set to `true`. `disableTitleTagline` - An option to disable showing the tagline in the title of main pages. Exclude this field to keep page titles as `Title • Tagline`. Set to `true` to make page titles just `Title`. `separateCss` - Folders inside which any `css` files will not be processed and concatenated to Docusaurus's styles. This is to support static `html` pages that may be separate from Docusaurus with completely separate styles. `footerIcon` - url for a footer icon. Currently used in the `core/Footer.js` file provided as an example, but it can be removed from that file. `translationRecruitingLink` - url for the `Help Translate` tab of language selection when languages besides English are enabled. This can be included you are using translations but does not have to be. `algolia` - Information for Algolia search integration. If this field is excluded, the search bar will not appear in the header. `gaTrackingId` - Google Analytics tracking ID to track page views. `highlight` - [Syntax highlighting](api-doc-markdown.md) options: - `theme` is the name of the theme used by Highlight.js when highlighting code. - `version` specifies a particular version of Highlight.js to be used. - `hljs` provides an escape valve by passing an instance of Highlight.js to the function specified here, allowing additional languages to be registered for syntax highlighting. `markdownPlugins` - An array of plugins to be loaded by Remarkable, the markdown parser and renderer used by Docusaurus. The plugin will receive a reference to the Remarkable instance, allowing custom parsing and rendering rules to be defined. `scripts` - Array of JavaScript sources to load. The script tag will be inserted in the HTML head. Users can also add their own custom fields if they wish to provide some data across different files. ## Example siteConfig.js with all fields ``` const users = [ { caption: "User1", image: "/test-site/img/docusaurus.svg", infoLink: "https://www.example.com", pinned: true } ]; const siteConfig = { title: "Docusaurus", tagline: "Generate websites!", url: "https://deltice.github.io", // url: "https://www.example.com", baseUrl: "/test-site/", // baseUrl: "/", projectName: "docusaurus", noIndex: false, headerLinks: [ { doc: "doc1", label: "Docs" }, { page: "help", label: "Help" }, { search: true }, { blog: true } ], // headerLinks: [], headerIcon: "img/docusaurus.svg", favicon: "img/favicon.png", colors: { primaryColor: "#2E8555", secondaryColor: "#205C3B" }, editUrl: "https://github.com/deltice/test-site/edit/master/docs/", users, disableHeaderTitle: true, disableTitleTagline: true, separateCss: ["static/css/non-docusaurus", "static/assets/separate-css"], footerIcon: "img/docusaurus.svg", translationRecruitingLink: "https://crowdin.com/project/docusaurus", algolia: { apiKey: "0f9f28b9ab9efae89810921a351753b5", indexName: "github" }, gaTrackingId: "U-A2352", highlight: { theme: 'default' }, markdownPlugins: [ function foo(md) { md.renderer.rules.fence_custom.foo = function(tokens, idx, options, env, instance) { return '