lazy.nvim/docusaurus.config.ts

125 lines
3.0 KiB
TypeScript

import { themes as prismThemes } from "prism-react-renderer";
import type { Config } from "@docusaurus/types";
import type * as Preset from "@docusaurus/preset-classic";
import prismTheme from "./src/themes/prism/tokyonight_moon";
const config: Config = {
title: "lazy.nvim",
tagline: "A modern plugin manager for Neovim",
url: "https://lazy.folke.io/",
baseUrl: "/",
onBrokenLinks: "throw",
onBrokenMarkdownLinks: "warn",
favicon: "img/favicon.ico",
trailingSlash: false,
organizationName: "folke", // Usually your GitHub org/user name.
projectName: "lazy.nvim", // Usually your repo name.
// Even if you don't use internationalization, you can use this field to set
// useful metadata like html lang. For example, if your site is Chinese, you
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: "en",
locales: ["en"],
},
presets: [
[
"classic",
{
docs: {
routeBasePath: "/",
sidebarPath: "./sidebars.ts",
editUrl: "https://github.com/folke/lazy.nvim/tree/docs/",
},
blog: false,
theme: {
customCss: "./src/css/custom.css",
},
} satisfies Preset.Options,
],
],
plugins: [
[
"@easyops-cn/docusaurus-search-local",
{
hashed: true,
indexDocs: true,
indexBlog: false,
indexPages: false,
docsRouteBasePath: "/",
searchBarShortcutHint: false,
},
],
],
themeConfig: {
// Replace with your project's social card
image: "img/docusaurus-social-card.jpg",
navbar: {
title: "lazy.nvim",
logo: {
alt: "lazy.nvim Logo",
src: "img/icon.svg",
},
items: [
{
to: "/",
label: "Docs",
position: "left",
activeBaseRegex: "^(?!.*news).*$",
},
{ to: "news", label: "News", position: "left" },
...require("./socials.ts"),
],
},
footer: {
style: "dark",
links: [
{
title: "Docs",
items: [
{
label: "Getting Started",
to: "/",
},
],
},
{
title: "Community",
items: [
{
label: "Discussions",
href: "https://github.com/folke/lazy.nvim/discussions",
},
{
label: "Twitter",
href: "https://twitter.com/folke",
},
],
},
{
title: "More",
items: [
{
label: "GitHub",
href: "https://github.com/folke/lazy.nvim",
},
],
},
],
copyright: `Copyright © ${new Date().getFullYear()} My Project, Inc. Built with Docusaurus.`,
},
prism: {
theme: prismTheme,
darkTheme: prismTheme,
additionalLanguages: ["lua", "bash", "powershell"],
},
} satisfies Preset.ThemeConfig,
};
export default config;