Files
discordeno/site/docusaurus.config.js
2023-02-20 21:20:54 +00:00

201 lines
5.3 KiB
JavaScript

// @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");
/** @type {import('@docusaurus/types').Config} */
const config = {
title: "Discordeno",
tagline: "Making Scalable Bots Easy!",
url: "https://discordeno.mod.land",
baseUrl: "/discordeno/",
onBrokenLinks: "throw",
onBrokenMarkdownLinks: "warn",
favicon: "img/favicon.png",
organizationName: "discordeno",
projectName: "discordeno",
deploymentBranch: "gh-pages",
trailingSlash: false,
presets: [
[
"classic",
/** @type {import('@docusaurus/preset-classic').Options} */
({
docs: false,
theme: {
customCss: require.resolve("./src/css/custom.css"),
},
}),
],
],
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
navbar: {
title: "Discordeno",
logo: {
alt: "My Site Logo",
src: "img/logo.svg",
},
items: [
{
type: "docSidebar",
sidebarId: "docs",
position: "left",
label: "Docs",
docsPluginId: "docs",
},
{
type: "docSidebar",
sidebarId: "tutorial",
position: "left",
label: "Tutorial",
docsPluginId: "tutorial",
},
{
href: "https://github.com/discordeno/discordeno",
label: "GitHub",
position: "right",
},
],
},
footer: {
style: "dark",
links: [
{
title: "Docs",
items: [
{
label: "Introduction",
to: "/docs/intro",
},
{
label: "Getting Started",
to: "/docs/getting-started",
},
{
label: "FAQ",
to: "/docs/frequently-asked-questions",
},
{
label: "Benchmark",
to: "/docs/benchmark",
},
],
},
{
title: "Tutorial",
items: [
{
label: "Big Bot",
to: "/tutorial/big-bot-guide/step-by-step",
},
{
label: "Node.js",
to: "/tutorial/nodejs/getting-started",
},
{
label: "Amethyst",
to: "/tutorial/amethyst/intro",
},
],
},
{
title: "Community",
items: [
{
label: "Discord",
href: "https://discord.gg/ddeno",
},
],
},
{
title: "More",
items: [
{
label: "GitHub",
href: "https://github.com/discordeno/discordeno",
},
],
},
],
copyright: `Copyright © 2021 - ${new Date().getFullYear()} Discordeno.`,
},
prism: {
theme: lightCodeTheme,
darkTheme: darkCodeTheme,
},
}),
plugins: [
[
"@docusaurus/plugin-content-docs",
/** @type {import('@docusaurus/plugin-content-docs').Options} */
{
id: "docs",
path: "docs",
routeBasePath: "docs",
sidebarPath: require.resolve("./docsSidebars.js"),
editUrl: "https://github.com/discordeno/discordeno/tree/main/site/",
},
],
[
"@docusaurus/plugin-content-docs",
/** @type {import('@docusaurus/plugin-content-docs').Options} */
{
id: "tutorial",
path: "tutorial",
routeBasePath: "tutorial",
sidebarPath: require.resolve("./tutorialSidebars.js"),
editUrl: "https://github.com/discordeno/discordeno/tree/main/site/",
},
],
[
require.resolve("@easyops-cn/docusaurus-search-local"),
{
indexDocs: true,
indexPages: true,
docsRouteBasePath: ["/docs", "/tutorial"],
language: ["en"],
hashed: true,
docsDir: ["docs", "tutorial"],
blogDir: [],
removeDefaultStopWordFilter: true,
highlightSearchTermsOnTargetPage: true,
searchResultLimits: 8,
searchResultContextMaxLength: 50,
},
],
[
"client-redirects",
/** @type {import('@docusaurus/plugin-client-redirects').Options} */
{
createRedirects(existingPath) {
if (
existingPath.includes("/tutorial/big-bot-guide/") || existingPath.includes("/tutorial/nodejs/") ||
existingPath.includes("/tutorial/amethyst/")
) {
return [
existingPath.replace("/tutorial/", "/docs/"),
];
}
if (
existingPath.includes("/docs/docs/frequently-asked-questions") ||
existingPath.includes("/docs/docs/getting-started") || existingPath.includes("/docs/docs/migrating")
) {
return [
existingPath.replace("/docs/", "/docs/general/"),
];
}
return undefined; // Return a falsy value: no redirect created
},
},
],
],
};
module.exports = config;