Files
anubis-mirror/docs/docusaurus.config.ts
Xe Iaso bf5d66222c chore: set up commitlint, husky, and prettier (#1451)
* chore: add prettier configuration

Signed-off-by: Xe Iaso <me@xeiaso.net>

* format: run prettier tree-wide

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore(prettier): ignore intentionally ungrammatical files

Signed-off-by: Xe Iaso <me@xeiaso.net>

* ci: add PR title lint rule

Signed-off-by: Xe Iaso <me@xeiaso.net>

* ci: add DCO check

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore: add commitlint and husky

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore: add CONTRIBUTING guidelines

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore: set SKIP_INTEGRATION in precommit tests

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore: update spelling

Signed-off-by: Xe Iaso <me@xeiaso.net>

* ci(dco): remove reopened trigger

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore: remove dead file

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore(prettier): don't format nginx includes

Signed-off-by: Xe Iaso <me@xeiaso.net>

---------

Signed-off-by: Xe Iaso <me@xeiaso.net>
2026-02-15 08:19:12 -05:00

169 lines
4.3 KiB
TypeScript

import { themes as prismThemes } from "prism-react-renderer";
import type { Config } from "@docusaurus/types";
import type * as Preset from "@docusaurus/preset-classic";
// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...)
const config: Config = {
title: "Anubis",
tagline: "Weigh the soul of incoming HTTP requests to protect your website!",
favicon: "img/favicon.ico",
// Set the production url of your site here
url: "https://anubis.techaro.lol",
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: "/",
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName: "TecharoHQ", // Usually your GitHub org/user name.
projectName: "anubis", // Usually your repo name.
onBrokenLinks: "throw",
onBrokenMarkdownLinks: "warn",
// 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"],
},
markdown: {
mermaid: true,
},
themes: ["@docusaurus/theme-mermaid"],
presets: [
[
"classic",
{
blog: {
showReadingTime: true,
feedOptions: {
type: ["rss", "atom", "json"],
xslt: true,
},
editUrl: "https://github.com/TecharoHQ/anubis/tree/main/docs/",
onInlineTags: "warn",
onInlineAuthors: "warn",
onUntruncatedBlogPosts: "throw",
},
docs: {
sidebarPath: "./sidebars.ts",
editUrl: "https://github.com/TecharoHQ/anubis/tree/main/docs/",
},
theme: {
customCss: "./src/css/custom.css",
},
} satisfies Preset.Options,
],
],
themeConfig: {
colorMode: {
respectPrefersColorScheme: true,
},
// Replace with your project's social card
image: "img/social-card.jpg",
navbar: {
title: "Anubis",
logo: {
alt: "A happy jackal woman with brown hair and red eyes",
src: "img/favicon.webp",
},
items: [
{ to: "/blog", label: "Blog", position: "left" },
{
type: "docSidebar",
sidebarId: "tutorialSidebar",
position: "left",
label: "Docs",
},
{
to: "/docs/admin/botstopper",
label: "Unbranded Version",
position: "left",
},
{
href: "https://github.com/TecharoHQ/anubis",
label: "GitHub",
position: "right",
},
{
href: "https://github.com/sponsors/Xe",
label: "Sponsor the Project",
position: "right",
},
],
},
footer: {
style: "dark",
links: [
{
title: "Docs",
items: [
{
label: "Intro",
to: "/docs/",
},
{
label: "Installation",
to: "/docs/admin/installation",
},
],
},
{
title: "Community",
items: [
{
label: "GitHub Discussions",
href: "https://github.com/TecharoHQ/anubis/discussions",
},
{
label: "Bluesky",
href: "https://bsky.app/profile/techaro.lol",
},
],
},
{
title: "More",
items: [
{
label: "Blog",
to: "/blog",
},
{
label: "GitHub",
href: "https://github.com/TecharoHQ/anubis",
},
{
label: "Status",
href: "https://techarohq.github.io/status/",
},
],
},
],
copyright: `Copyright © ${new Date().getFullYear()} Techaro. Made with ❤️ in 🇨🇦.`,
},
prism: {
theme: prismThemes.github,
darkTheme: prismThemes.dracula,
magicComments: [
{
className: "code-block-diff-add-line",
line: "diff-add",
},
{
className: "code-block-diff-remove-line",
line: "diff-remove",
},
],
},
} satisfies Preset.ThemeConfig,
};
export default config;