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