Mirror of https://forge.levinkeller.de/levin/dorfarchiv.git
3dc8f353899c33f97e1fa306f43dcc9c767f0b17
152 lines · 4.4 KB
| 1 | import type * as Preset from '@docusaurus/preset-classic' |
| 2 | import type { Config } from '@docusaurus/types' |
| 3 | import { themes as prismThemes } from 'prism-react-renderer' |
| 4 | import remarkImageFigcaption from './src/plugins/remark-image-figcaption.mjs' |
| 5 | |
| 6 | // This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) |
| 7 | |
| 8 | const config: Config = { |
| 9 | title: 'Digitales Dorfarchiv Rössing', |
| 10 | tagline: 'Geschichte und Geschichten aus Rössing bewahren', |
| 11 | favicon: 'img/favicon.ico', |
| 12 | |
| 13 | // Future flags, see https://docusaurus.io/docs/api/docusaurus-config#future |
| 14 | future: { |
| 15 | experimental_faster: true, |
| 16 | v4: true, // Improve compatibility with the upcoming Docusaurus v4 |
| 17 | }, |
| 18 | |
| 19 | // Set the production url of your site here |
| 20 | url: 'https://dorfarchiv-roessing.de', |
| 21 | // Set the /<baseUrl>/ pathname under which your site is served |
| 22 | // For GitHub pages deployment, it is often '/<projectName>/' |
| 23 | baseUrl: '/', |
| 24 | |
| 25 | // GitHub pages deployment config. |
| 26 | // If you aren't using GitHub pages, you don't need these. |
| 27 | organizationName: 'Dorfpflege-Rossing', |
| 28 | projectName: 'dorfarchiv', |
| 29 | |
| 30 | onBrokenLinks: 'throw', |
| 31 | |
| 32 | // Even if you don't use internationalization, you can use this field to set |
| 33 | // useful metadata like html lang. For example, if your site is Chinese, you |
| 34 | // may want to replace "en" with "zh-Hans". |
| 35 | i18n: { |
| 36 | defaultLocale: 'de', |
| 37 | locales: ['de'], |
| 38 | }, |
| 39 | |
| 40 | scripts: [ |
| 41 | { |
| 42 | src: 'https://analytics.levinkeller.de/js/script.js', |
| 43 | defer: true, |
| 44 | 'data-domain': 'archiv.xn--rssing-wxa.de', |
| 45 | }, |
| 46 | ], |
| 47 | |
| 48 | presets: [ |
| 49 | [ |
| 50 | 'classic', |
| 51 | { |
| 52 | docs: { |
| 53 | path: 'unterlagen', |
| 54 | routeBasePath: 'unterlagen', |
| 55 | sidebarPath: './sidebars.ts', |
| 56 | editUrl: |
| 57 | 'https://github.com/Dorfpflege-Rossing/dorfarchiv/edit/main/', |
| 58 | beforeDefaultRemarkPlugins: [remarkImageFigcaption], |
| 59 | }, |
| 60 | blog: { |
| 61 | path: 'berichte', |
| 62 | routeBasePath: 'berichte', |
| 63 | showReadingTime: true, |
| 64 | feedOptions: { |
| 65 | type: ['rss', 'atom'], |
| 66 | xslt: true, |
| 67 | }, |
| 68 | editUrl: |
| 69 | 'https://github.com/Dorfpflege-Rossing/dorfarchiv/edit/main/', |
| 70 | blogTitle: 'Berichte', |
| 71 | blogDescription: 'Berichte und Geschichten aus Rössing', |
| 72 | blogSidebarTitle: 'Alle Berichte', |
| 73 | blogSidebarCount: 'ALL', |
| 74 | beforeDefaultRemarkPlugins: [remarkImageFigcaption], |
| 75 | }, |
| 76 | theme: { |
| 77 | customCss: './src/css/custom.css', |
| 78 | }, |
| 79 | } satisfies Preset.Options, |
| 80 | ], |
| 81 | ], |
| 82 | |
| 83 | themeConfig: { |
| 84 | // Replace with your project's social card |
| 85 | image: 'img/docusaurus-social-card.jpg', |
| 86 | navbar: { |
| 87 | title: 'Dorfarchiv Rössing', |
| 88 | logo: { |
| 89 | alt: 'Dorfarchiv Rössing Logo', |
| 90 | src: 'img/logo.svg', |
| 91 | }, |
| 92 | items: [ |
| 93 | { |
| 94 | type: 'docSidebar', |
| 95 | sidebarId: 'tutorialSidebar', |
| 96 | position: 'left', |
| 97 | label: 'Unterlagen', |
| 98 | }, |
| 99 | { to: '/berichte', label: 'Berichte', position: 'left' }, |
| 100 | { to: '/changelog', label: 'Changelog', position: 'left' }, |
| 101 | { |
| 102 | href: 'https://github.com/Dorfpflege-Rossing/dorfarchiv', |
| 103 | label: 'GitHub', |
| 104 | position: 'right', |
| 105 | }, |
| 106 | ], |
| 107 | }, |
| 108 | footer: { |
| 109 | style: 'dark', |
| 110 | links: [ |
| 111 | { |
| 112 | title: 'Archiv', |
| 113 | items: [ |
| 114 | { |
| 115 | label: 'Unterlagen', |
| 116 | to: '/unterlagen/intro', |
| 117 | }, |
| 118 | { |
| 119 | label: 'Berichte', |
| 120 | to: '/berichte', |
| 121 | }, |
| 122 | ], |
| 123 | }, |
| 124 | { |
| 125 | title: 'Rechtliches', |
| 126 | items: [ |
| 127 | { |
| 128 | label: 'Impressum', |
| 129 | to: '/impressum', |
| 130 | }, |
| 131 | ], |
| 132 | }, |
| 133 | { |
| 134 | title: 'Mehr', |
| 135 | items: [ |
| 136 | { |
| 137 | label: 'GitHub', |
| 138 | href: 'https://github.com/Dorfpflege-Rossing/dorfarchiv', |
| 139 | }, |
| 140 | ], |
| 141 | }, |
| 142 | ], |
| 143 | copyright: `Copyright © ${new Date().getFullYear()} Levin Keller. Erstellt mit Docusaurus.<br/>Inhalte: <a href="https://creativecommons.org/publicdomain/zero/1.0/deed.de" target="_blank" rel="noopener noreferrer">CC0</a> (falls nicht anders geregelt) · Code: <a href="https://github.com/Dorfpflege-Rossing/dorfarchiv/blob/main/LICENSE" target="_blank" rel="noopener noreferrer">MIT</a>`, |
| 144 | }, |
| 145 | prism: { |
| 146 | theme: prismThemes.github, |
| 147 | darkTheme: prismThemes.dracula, |
| 148 | }, |
| 149 | } satisfies Preset.ThemeConfig, |
| 150 | } |
| 151 | |
| 152 | export default config |