// @ts-check // Note: type annotations allow type checking and IDEs autocompletion const lightCodeTheme = require("prism-react-renderer/themes/github"); const darkCodeTheme = require("prism-react-renderer/themes/dracula"); // const lastVersion = "v0.47"; const lastVersion = "current"; /** @type {import('@docusaurus/types').Config} */ const config = { title: "Cosmos SDK", tagline: "Cosmos SDK is the world's most popular framework for building application-specific blockchains.", url: "https://docs.cosmos.network", baseUrl: "/", onBrokenLinks: "warn", onBrokenMarkdownLinks: "warn", favicon: "img/favicon.svg", trailingSlash: false, // GitHub pages deployment config. // If you aren't using GitHub pages, you don't need these. organizationName: "cosmos", projectName: "cosmos-sdk", // Even if you don't use internalization, you can use this field to set useful // metadata like html lang. For example, if your site is Chinese, you may want // to replace "en" with "zh-Hans". i18n: { defaultLocale: "en", locales: ["en"], }, presets: [ [ "classic", /** @type {import('@docusaurus/preset-classic').Options} */ ({ docs: { sidebarPath: require.resolve("./sidebars.js"), routeBasePath: "/", lastVersion: lastVersion, versions: { current: { path: "main", // banner: "unreleased", }, // "v0.47": { // label: "v0.47", // path: "v0.47", // banner: "none", // }, }, }, theme: { customCss: require.resolve("./src/css/custom.css"), }, }), ], ], themeConfig: /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ ({ image: "img/banner.jpg", docs: { sidebar: { autoCollapseCategories: true, }, }, navbar: { title: "Cosmos SDK", hideOnScroll: false, logo: { alt: "Cosmos SDK Logo", src: "img/logo-sdk.svg", href: "https://docs.cosmos.network", target: "_self", }, items: [ { href: "https://github.com/cosmos/cosmos-sdk", html: ` `, position: "right", }, { type: "docsVersionDropdown", position: "left", dropdownActiveClassDisabled: true, // versions not yet migrated to docusaurus dropdownItemsAfter: [ { href: "https://docs.cosmos.network/v0.46/", label: "v0.46", target: "_self", }, { href: "https://docs.cosmos.network/v0.45/", label: "v0.45", target: "_self", }, ], }, ], }, footer: { links: [ { items: [ { html: `Cosmos Logo`, }, ], }, { title: "Documentation", items: [ { label: "Cosmos Hub", href: "https://hub.cosmos.network", }, { label: "CometBFT", href: "https://docs.cometbft.com", }, { label: "IBC Go", href: "https://ibc.cosmos.network", }, ], }, { title: "Community", items: [ { label: "Blog", href: "https://blog.cosmos.network", }, { label: "Forum", href: "https://forum.cosmos.network", }, { label: "Discord", href: "https://discord.gg/cosmosnetwork", }, { label: "Reddit", href: "https://reddit.com/r/cosmosnetwork", }, ], }, { title: "Social", items: [ { label: "Discord", href: "https://discord.gg/cosmosnetwork", }, { label: "Twitter", href: "https://twitter.com/cosmos", }, { label: "Youtube", href: "https://www.youtube.com/c/CosmosProject", }, { label: "Telegram", href: "https://t.me/cosmosproject", }, ], }, ], copyright: `

The development of the Cosmos SDK is led primarily by Interchain Core Teams. Funding for this development comes primarily from the Interchain Foundation, a Swiss non-profit.

`, }, prism: { theme: lightCodeTheme, darkTheme: darkCodeTheme, additionalLanguages: ["protobuf", "go-module"], // https://prismjs.com/#supported-languages }, algolia: { appId: "QLS2QSP47E", apiKey: "4d9feeb481e3cfef8f91bbc63e090042", indexName: "cosmos_network", contextualSearch: false, }, }), themes: ["@you54f/theme-github-codeblock"], plugins: [ async function myPlugin(context, options) { return { name: "docusaurus-tailwindcss", configurePostCss(postcssOptions) { postcssOptions.plugins.push(require("postcss-import")); postcssOptions.plugins.push(require("tailwindcss/nesting")); postcssOptions.plugins.push(require("tailwindcss")); postcssOptions.plugins.push(require("autoprefixer")); return postcssOptions; }, }; }, [ "@docusaurus/plugin-google-analytics", { trackingID: "UA-51029217-2", anonymizeIP: true, }, ], [ "@docusaurus/plugin-client-redirects", { fromExtensions: ["html"], toExtensions: ["html"], redirects: [ { from: ["/", "/master", "/v0.43", "/v0.44"], to: "/main", }, { from: [ "/main/modules/auth/01_concepts", "/main/modules/auth/02_state", "/main/modules/auth/03_antehandlers", "/main/modules/auth/04_keepers", "/main/modules/auth/06_params", "/main/modules/auth/07_client", ], to: "/main/modules/auth", }, { from: "/main/modules/auth/05_vesting", to: "/main/modules/auth/vesting", }, { from: [ "/main/modules/authz/01_concepts", "/main/modules/authz/02_state", "/main/modules/authz/03_messages", "/main/modules/authz/04_events", "/main/modules/authz/05_client", ], to: "/main/modules/authz", }, { from: [ "/main/modules/bank/01_state", "/main/modules/bank/02_keepers", "/main/modules/bank/04_events", "/main/modules/bank/05_params", "/main/modules/bank/06_client", ], to: "/main/modules/bank", }, { from: [ "/main/modules/capability/01_concepts", "/main/modules/capability/02_state", ], to: "/main/modules/capability", }, { from: [ "/main/modules/crisis/01_state", "/main/modules/crisis/02_messages", "/main/modules/crisis/03_events", "/main/modules/crisis/04_params", "/main/modules/crisis/05_client", ], to: "/main/modules/crisis", }, { from: [ "/main/modules/distribution/01_concepts", "/main/modules/distribution/02_state", "/main/modules/distribution/03_begin_block", "/main/modules/distribution/04_messages", "/main/modules/distribution/05_hooks", "/main/modules/distribution/06_events", "/main/modules/distribution/07_params", "/main/modules/distribution/08_client", ], to: "/main/modules/distribution", }, { from: [ "/main/modules/evidence/01_concepts", "/main/modules/evidence/02_state", "/main/modules/evidence/03_messages", "/main/modules/evidence/04_events", "/main/modules/evidence/05_params", "/main/modules/evidence/06_begin_block", "/main/modules/evidence/07_client", ], to: "/main/modules/evidence", }, { from: [ "/main/modules/feegrant/01_concepts", "/main/modules/feegrant/02_state", "/main/modules/feegrant/03_messages", "/main/modules/feegrant/04_events", "/main/modules/feegrant/05_client", ], to: "/main/modules/feegrant", }, { from: [ "/main/modules/gov/01_concepts", "/main/modules/gov/02_state", "/main/modules/gov/03_messages", "/main/modules/gov/04_events", "/main/modules/gov/05_future_improvements", "/main/modules/gov/06_params", "/main/modules/gov/07_client", "/main/modules/gov/08_metadata", ], to: "/main/modules/gov", }, { from: [ "/main/modules/group/01_concepts", "/main/modules/group/02_state", "/main/modules/group/03_messages", "/main/modules/group/04_events", "/main/modules/group/05_client", "/main/modules/group/06_metadata", ], to: "/main/modules/group/", }, { from: [ "/main/modules/mint/01_concepts", "/main/modules/mint/02_state", "/main/modules/mint/03_begin_block", "/main/modules/mint/04_params", "/main/modules/mint/05_events", "/main/modules/mint/06_client", ], to: "/main/modules/mint/", }, { from: [ "/main/modules/nft/01_concepts", "/main/modules/nft/02_state", "/main/modules/nft/03_messages", "/main/modules/nft/04_events", ], to: "/main/modules/nft/", }, { from: [ "/main/modules/params/01_keeper", "/main/modules/params/02_subspace", ], to: "/main/modules/params/", }, { from: [ "/main/modules/slashing/01_concepts", "/main/modules/slashing/02_state", "/main/modules/slashing/03_messages", "/main/modules/slashing/04_begin_block", "/main/modules/slashing/05_hooks", "/main/modules/slashing/06_events", "/main/modules/slashing/07_tombstone", "/main/modules/slashing/08_params", "/main/modules/slashing/09_client", ], to: "/main/modules/slashing/", }, { from: [ "/main/modules/staking/01_state", "/main/modules/staking/02_state_transitions", "/main/modules/staking/03_messages", "/main/modules/staking/04_begin_block", "/main/modules/staking/05_end_block", "/main/modules/staking/06_hooks", "/main/modules/staking/07_events", "/main/modules/staking/08_params", "/main/modules/staking/09_client", ], to: "/main/modules/staking/", }, { from: [ "/main/modules/upgrade/01_concepts", "/main/modules/upgrade/02_state", "/main/modules/upgrade/03_events", "/main/modules/upgrade/04_client", ], to: "/main/modules/upgrade/", }, { from: ["/main/run-node/cosmovisor"], to: "/main/tooling/cosmovisor", }, { from: ["/main/migrations/pre-upgrade"], to: "/main/building-apps/app-upgrade", }, ], }, ], ], }; module.exports = config;