1
0
mirror of https://github.com/actix/actix-website synced 2024-11-27 10:02:57 +01:00
actix-website/docusaurus.config.ts
Hichem Fantar ad4aeac34f
TypeScript compatibility (#379)
* Update file extensions and exports for TypeScript compatibility

* docs: fix typo in getting-started.md

* chore: add no-trailing-punctuation rule to VS Code settings

* feat: add @docusaurus/theme-mermaid for mermaid diagram support

* Update import paths for MermaidDiagram component

* remove redudndant check, use effect only runs after the component is mounted

* Update docusaurus.config.ts to fix syntax error

* bring back check because it's not possible to properly cancel a dynamic import

* feat: optimize dynamic import in CodeBlock component

* chore: update VS Code extensions.json with eslint recommendation

* Update docusaurus.config.ts to add GitHub repository link in header
2024-05-28 19:23:34 +00:00

95 lines
2.4 KiB
TypeScript

import { Config } from "@docusaurus/types";
import type * as Preset from "@docusaurus/preset-classic";
import { themes as prismThemes } from "prism-react-renderer";
const draculaTheme = prismThemes.dracula;
const config: Config = {
title: "Actix",
tagline:
"Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust",
url: "https://actix.rs",
baseUrl: "/",
onBrokenLinks: "throw",
onBrokenMarkdownLinks: "warn",
favicon: "img/logo.png",
organizationName: "actix", // Usually your GitHub org/user name.
projectName: "actix-web", // Usually your repo name.
// https://docusaurus.io/docs/api/themes/@docusaurus/theme-mermaid
// https://docusaurus.io/docs/markdown-features/diagrams
markdown: {
mermaid: true,
},
themes: ["@docusaurus/theme-mermaid"],
themeConfig: {
navbar: {
title: "Actix",
logo: {
alt: "Actix Logo",
src: "img/logo-icon.png",
width: 32,
height: 32,
},
items: [
{
to: "docs",
activeBasePath: "docs",
label: "Documentation",
position: "left",
},
{
to: "community",
activeBasePath: "community",
label: "Community",
position: "left",
},
{
to: "code",
activeBasePath: "code",
label: "Code",
position: "left",
},
{
href: "https://github.com/actix/actix-web",
position: "right",
className: "header-github-link",
"aria-label": "GitHub repository",
},
],
},
footer: {
copyright: `Copyright © ${new Date().getFullYear()} The Actix Team`,
},
prism: {
// dracula is closest to docs.rs, where keywords are highlighted
theme: draculaTheme,
additionalLanguages: ["rust", "toml", "shell-session"],
defaultLanguage: "rust",
},
colorMode: {
respectPrefersColorScheme: true,
},
} satisfies Preset.ThemeConfig,
plugins: [
"docusaurus-plugin-sass",
require.resolve("docusaurus-lunr-search"),
],
presets: [
[
"classic",
{
docs: {
sidebarPath: require.resolve("./sidebars.js"),
editUrl: "https://github.com/actix/actix-website/edit/main/",
},
theme: {
customCss: require.resolve("./src/css/custom.css"),
},
} satisfies Preset.Options,
],
],
};
export default config;