1import { defineConfig } from "vitepress";
2
3export default defineConfig({
4 title: "Matcha",
5 description:
6 "A modern, beautiful, and feature-rich email client for the terminal.",
7 lang: "en-US",
8
9 lastUpdated: true,
10 cleanUrls: true,
11
12 head: [
13 ["link", { rel: "icon", href: "/favicon.ico" }],
14 ["link", { rel: "icon", type: "image/png", href: "/logo.png" }],
15 ["meta", { property: "og:title", content: "Matcha" }],
16 ["meta", { property: "og:description", content: "A modern, beautiful, and feature-rich email client for the terminal." }],
17 ["meta", { property: "og:image", content: "https://docs.matcha.email/og-image.png" }],
18 ["meta", { property: "og:image:width", content: "1200" }],
19 ["meta", { property: "og:image:height", content: "630" }],
20 ["meta", { property: "twitter:card", content: "summary_large_image" }],
21 ["meta", { property: "twitter:image", content: "https://docs.matcha.email/og-image.png" }],
22 ],
23
24 srcDir: "docs",
25 outDir: ".vitepress/dist",
26 assetsDir: "assets",
27 publicDir: "../public",
28
29 vite: {
30 publicDir: "../public",
31 },
32
33 markdown: {
34 lineNumbers: true,
35 config: (md) => {
36 md.set({
37 html: true,
38 xhtmlOut: true,
39 linkify: true,
40 });
41 },
42 },
43
44 themeConfig: {
45 logo: { src: "/logo.png", alt: "Matcha" },
46 siteTitle: false,
47
48 search: {
49 provider: "local",
50 },
51
52 nav: [
53 { text: "Docs", link: "/" },
54 { text: "Marketplace", link: "/marketplace" },
55 ],
56
57 sidebar: [
58 {
59 text: "Get Started",
60 items: [
61 { text: "Welcome", link: "/" },
62 { text: "Installation", link: "/installation" },
63 { text: "Usage", link: "/usage" },
64 { text: "Configuration", link: "/Configuration" },
65 { text: "Localization", link: "/localization" },
66 ],
67 },
68 {
69 text: "Setup Guides",
70 items: [
71 { text: "Gmail", link: "/setup-guides/gmail" },
72 { text: "iCloud", link: "/setup-guides/icloud" },
73 { text: "Outlook", link: "/setup-guides/outlook" },
74 { text: "AI Rewrite", link: "/setup-guides/ai-rewrite" },
75 ],
76 },
77 {
78 text: "Features",
79 items: [
80 { text: "Accounts", link: "/Features/ACCOUNTS" },
81 { text: "Composing", link: "/Features/COMPOSING" },
82 { text: "Contacts", link: "/Features/CONTACTS" },
83 { text: "Drafts", link: "/Features/DRAFTS" },
84 { text: "Email Management", link: "/Features/EMAIL_MANAGEMENT" },
85 { text: "UI", link: "/Features/UI" },
86 { text: "Themes", link: "/Features/Themes" },
87 { text: "Keybinds", link: "/Features/Keybinds" },
88 { text: "CLI", link: "/Features/CLI" },
89 { text: "AI Agents", link: "/Features/AI_AGENTS" },
90 { text: "Plugins", link: "/Features/Plugins" },
91 { text: "PGP", link: "/Features/PGP" },
92 { text: "Encryption", link: "/Features/Encryption" },
93 { text: "S/MIME", link: "/Features/SMIME" },
94 { text: "Spellcheck", link: "/Features/Spellcheck" },
95 { text: "Calendar", link: "/Features/CALENDAR" },
96 { text: "Daemon", link: "/Features/DAEMON" },
97 { text: "Split View", link: "/Features/SPLIT_VIEW" },
98 { text: "Threaded View", link: "/Features/THREADED_VIEW" },
99 { text: "Images", link: "/Features/Images" },
100 { text: "Hyperlinks", link: "/Features/Hyperlinks" },
101 { text: "Advanced", link: "/Features/ADVANCED" },
102 { text: "PassCmd", link: "/Features/PassCmd" },
103 ],
104 },
105 {
106 text: "Community",
107 items: [
108 { text: "Marketplace", link: "/marketplace" },
109 { text: "GitHub", link: "https://github.com/floatpane/matcha" },
110 { text: "Discord", link: "https://discord.gg/RxNrJgfatk" },
111 { text: "Mastodon", link: "https://fosstodon.org/@floatpane" },
112 ],
113 },
114 ],
115
116 socialLinks: [
117 { icon: "github", link: "https://github.com/floatpane/matcha" },
118 { icon: "discord", link: "https://discord.gg/RxNrJgfatk" },
119 ],
120
121 footer: {
122 message: "Released under the MIT License.",
123 copyright: `Copyright © ${new Date().getFullYear()} Floatpane`,
124 },
125
126 editLink: {
127 pattern: "https://github.com/floatpane/matcha/edit/master/docs/:path",
128 text: "Edit this page on GitHub",
129 },
130 },
131});