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.email",
 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          to: "/marketplace",
 56          label: "Marketplace",
 57          position: "left",
 58        },
 59        {
 60          href: "https://github.com/floatpane/matcha",
 61          label: "GitHub",
 62          position: "right",
 63        },
 64      ],
 65    },
 66    footer: {
 67      style: "dark",
 68      links: [
 69        {
 70          title: "Docs",
 71          items: [
 72            {
 73              label: "Installation",
 74              to: "/installation",
 75            },
 76            {
 77              label: "Usage",
 78              to: "/usage",
 79            },
 80          ],
 81        },
 82        {
 83          title: "Community",
 84          items: [
 85            {
 86              label: "GitHub",
 87              href: "https://github.com/floatpane/matcha",
 88            },
 89            {
 90              label: "Mastodon",
 91              href: "https://fosstodon.org/@floatpane",
 92            },
 93          ],
 94        },
 95      ],
 96      copyright: `Copyright © ${new Date().getFullYear()} Floatpane.`,
 97    },
 98    prism: {
 99      theme: prismThemes.github,
100      darkTheme: prismThemes.dracula,
101    },
102  } satisfies Preset.ThemeConfig,
103};
104
105export default config;