docusaurus.config.ts

  1import { themes as prismThemes } from "prism-react-renderer";
  2import type { Config } from "@docusaurus/types";
  3import type * as Preset from "@docusaurus/preset-classic";
  4
  5const config: Config = {
  6  title: "Matcha",
  7  tagline:
  8    "A modern, beautiful, and feature-rich email client for the terminal.",
  9  favicon: "img/favicon.ico",
 10
 11  url: "https://docs.matcha.floatpane.com",
 12  baseUrl: "/",
 13
 14  organizationName: "floatpane",
 15  projectName: "matcha",
 16
 17  onBrokenLinks: "warn",
 18
 19  i18n: {
 20    defaultLocale: "en",
 21    locales: ["en"],
 22  },
 23
 24  presets: [
 25    [
 26      "classic",
 27      {
 28        docs: {
 29          sidebarPath: "./sidebars.ts",
 30          routeBasePath: "/",
 31          editUrl: "https://github.com/floatpane/matcha/tree/master/docs/",
 32        },
 33        blog: false,
 34        theme: {
 35          customCss: "./src/css/custom.css",
 36        },
 37      } satisfies Preset.Options,
 38    ],
 39  ],
 40
 41  themeConfig: {
 42    image: "img/logo.png",
 43    colorMode: {
 44      respectPrefersColorScheme: true,
 45      defaultMode: "dark",
 46    },
 47    navbar: {
 48      title: "Matcha",
 49      logo: {
 50        alt: "Matcha Logo",
 51        src: "img/logo.png", // We will update this later or rely on the text
 52      },
 53      items: [
 54        {
 55          href: "https://github.com/floatpane/matcha",
 56          label: "GitHub",
 57          position: "right",
 58        },
 59      ],
 60    },
 61    footer: {
 62      style: "dark",
 63      links: [
 64        {
 65          title: "Docs",
 66          items: [
 67            {
 68              label: "Installation",
 69              to: "/installation",
 70            },
 71            {
 72              label: "Usage",
 73              to: "/usage",
 74            },
 75          ],
 76        },
 77        {
 78          title: "Community",
 79          items: [
 80            {
 81              label: "GitHub",
 82              href: "https://github.com/floatpane/matcha",
 83            },
 84            {
 85              label: "Mastodon",
 86              href: "https://fosstodon.org/@floatpane",
 87            },
 88          ],
 89        },
 90      ],
 91      copyright: `Copyright © ${new Date().getFullYear()} Floatpane.`,
 92    },
 93    prism: {
 94      theme: prismThemes.github,
 95      darkTheme: prismThemes.dracula,
 96    },
 97  } satisfies Preset.ThemeConfig,
 98};
 99
100export default config;