'../pages/DiscordBot'
                                        )}
                                />
+                               <Route
+                                       path="discord-privacy"
+                                       lazy={() => import(
+                                               /* webpackChunkName: "discord" */
+                                               '../pages/DiscordPrivacy'
+                                       )}
+                               />
+                               <Route
+                                       path="discord-terms"
+                                       lazy={() => import(
+                                               /* webpackChunkName: "discord" */
+                                               '../pages/DiscordTerms'
+                                       )}
+                               />
                                <Route
                                        path="dungeons"
                                        element={<Techniques namespace="dungeons" type="dungeon" />}
 
                        userSubscriptions: 'Abonnierte Benutzer',
                        userUnsubError: 'Fehler beim Kündigen',
                },
+               discordPrivacy: {
+                       date: 'Letzte Änderung: {{ date, LL }}',
+                       heading: 'Discord Bot Datenschutzbestimmungen',
+                       p1: 'Wenn du den Discord Bot auf deinen Server einlädst, läd er die Channel-Liste, Rollen-Liste und User-Liste. Das wird benutzt, um die Steuerelemente auf der Weboberfläche zu füllen.',
+                       p2: 'Daten im Zusammenhang mit DMs und Interaktionen werden nur zur Abhandlung im Arbeitsspeicher behalten und NICHT permanent gespeichert.',
+               },
+               discordTerms: {
+                       date: 'Letzte Änderung: {{ date, LL }}',
+                       heading: 'Discord Bot Nutzungsbedingungen',
+                       p1: 'Jedem steht frei, den Discord Bot einzuladen und die bereitgestellten Funktionen zu nutzen.',
+                       p2: 'Die Nützlichkeit ebbt jedoch stark ab, wenn man nicht an Retro Speedrun und Randomizer Races interessiert ist.',
+               },
                episodes: {
                        addPlayer: 'Spieler hinzufügen',
                        addRestream: 'Neuer Restream',
 
                        userSubscriptions: 'User subscriptions',
                        userUnsubError: 'Error unsubscribing',
                },
+               discordPrivacy: {
+                       date: 'Last changed: {{ date, LL }}',
+                       heading: 'Discord Bot Privacy Policy',
+                       p1: 'When you add this bot to your server, it loads the channel list, role list and user list. This is to populate the control elements on the web interface.',
+                       p2: 'Data involved in handling DMs and interactions are processed in RAM and are NOT stored on disk.',
+               },
+               discordTerms: {
+                       date: 'Last changed: {{ date, LL }}',
+                       heading: 'Discord Bot Terms of Service',
+                       p1: 'Anyone is free to invite this bot to their discord server and use its functions as they see fit.',
+                       p2: 'Its usefulness, however, greatly decreases if you\'re not into retro speedrun and randomizer races.',
+               },
                episodes: {
                        addPlayer: 'Add player',
                        addRestream: 'Add Restream',
 
--- /dev/null
+import React from 'react';
+import { Container } from 'react-bootstrap';
+import { Helmet } from 'react-helmet';
+import { useTranslation } from 'react-i18next';
+
+const TERMS_DATE = new Date('2025-07-31T10:00:00Z');
+
+export const Component = () => {
+       const { t } = useTranslation();
+
+       return <Container>
+               <h1>{t('discordPrivacy.heading')}</h1>
+               <Helmet>
+                       <title>{t('discordPrivacy.heading')}</title>
+               </Helmet>
+               <p>{t('discordPrivacy.p1')}</p>
+               <p>{t('discordPrivacy.p2')}</p>
+               <p className="text-muted">{t('discordPrivacy.date', { date: TERMS_DATE })}</p>
+       </Container>;
+};
 
--- /dev/null
+import React from 'react';
+import { Container } from 'react-bootstrap';
+import { Helmet } from 'react-helmet';
+import { useTranslation } from 'react-i18next';
+
+const PRIVACY_DATE = new Date('2025-07-31T10:00:00Z');
+
+export const Component = () => {
+       const { t } = useTranslation();
+
+       return <Container>
+               <h1>{t('discordTerms.heading')}</h1>
+               <Helmet>
+                       <title>{t('discordTerms.heading')}</title>
+               </Helmet>
+               <p>{t('discordTerms.p1')}</p>
+               <p>{t('discordTerms.p2')}</p>
+               <p className="text-muted">{t('discordTerms.date', { date: PRIVACY_DATE })}</p>
+       </Container>;
+};