Repository navigation
Expand file tree
/
Copy pathastro.config.mjs
More file actions
151 lines (150 loc) · 6.08 KB
/
Copy pathastro.config.mjs
File metadata and controls
151 lines (150 loc) · 6.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
// @ts-check
import { defineConfig } from 'astro/config';
import starlight from '@astrojs/starlight';
import mermaid from 'astro-mermaid';
// Generated by scripts/schema-to-markdown.py from public/schemas/*.x-group.
import schemaReference from './src/schema-sidebar.json' with { type: 'json' };
// https://astro.build/config
export default defineConfig({
// Canonical origin, used for sitemap and absolute URLs. Must match the Pages custom domain.
site: 'https://docs.encounter.plus',
// Retired pages, plus the flat v4 paths that shipped app builds still open. Those arrive here
// through the host-level help.encounter.plus/* → docs.encounter.plus/* redirect.
redirects: {
'/guides/web-client-faq': '/guides/remote-play/',
'/remote-play': '/guides/remote-play/',
'/special-thanks': '/about/special-thanks/',
// Retired in the v5 guides restructure.
'/guides/encounter-management': '/guides/encounters/',
'/guides/battle-map': '/guides/battle-maps/',
'/guides/special-thanks': '/about/special-thanks/',
// Broadened from a video-only page.
'/guides/battle-maps/video-assets': '/guides/battle-maps/assets/',
},
integrations: [
// Renders ```mermaid code blocks client-side. Must come before starlight so it
// sees the markdown before Starlight processes it.
mermaid(
{
theme: 'forest',
autoTheme: true,
enableLog: false ,
}
),
starlight({
title: 'Encounter+ Docs',
logo: {
light: './src/assets/logo-light.webp',
dark: './src/assets/logo-dark.webp',
replacesTitle: true,
},
// Cloudflare Web Analytics: cookieless, so no consent banner. The token is public.
head: [
{
tag: 'script',
attrs: {
type: 'module',
src: 'https://static.cloudflareinsights.com/beacon.min.js',
'data-cf-beacon': '{"token": "f60deb58dd8d434885761cecf8123606"}',
},
},
],
social: [{ icon: 'github', label: 'GitHub', href: 'https://github.com/encounterplus/docs' }],
// "Edit page" link under each page; Starlight appends the page's source path.
editLink: {
baseUrl: 'https://github.com/encounterplus/docs/edit/main/',
},
customCss: [
// Relative path to your custom CSS file
'./src/styles/custom.css',
],
sidebar: [
{
label: "About",
items: [
{ label: "Introduction", link: "/about/intro" },
{ label: "Upgrading from v4", link: "/about/upgrading/" },
{ label: "Frequently Asked Questions", link: "/about/faq/" },
{ label: "Special Thanks", link: "/about/special-thanks/" },
],
},
{
label: "Guides",
items: [
{ label: "Quick Start", link: "/guides/quick-start/" },
{ label: "How it works", link: "/guides/how-it-works/" },
{ label: "The Library", link: "/guides/library/" },
{ label: "Campaigns & Modules", link: "/guides/campaigns-and-modules/" },
{ label: "Encounters & Combat", link: "/guides/encounters/" },
{
label: "Battle Maps",
items: [
{ label: "Overview", link: "/guides/battle-maps/" },
{ label: "Tokens", link: "/guides/battle-maps/tokens/" },
{ label: "Line of Sight & Fog", link: "/guides/battle-maps/line-of-sight/" },
{ label: "Drawing, Markers & Effects", link: "/guides/battle-maps/drawing-and-effects/" },
{ label: "Assets", link: "/guides/battle-maps/assets/" },
],
},
{ label: "The Player Screen", link: "/guides/player-screen/" },
{ label: "Remote Play", link: "/guides/remote-play/" },
{ label: "Writing Content", link: "/guides/writing-content/" },
{ label: "Dice & Roll Tables", link: "/guides/dice/" },
{ label: "Import and Export", link: "/guides/import-and-export/" },
{ label: "Game Systems", link: "/guides/game-systems/" },
{ label: "Tips & Tricks", link: "/guides/tips-and-tricks/" },
{ label: "Video Tutorials", link: "/guides/tutorials/" },
],
},
{
label: 'Settings',
items: [
{ label: 'Overview', link: '/settings/overview/' },
{ label: 'Content', link: '/settings/content/' },
{ label: 'Combat', link: '/settings/combat/' },
{ label: 'Dice Roller', link: '/settings/dice-roller/' },
{ label: 'Battle Map', link: '/settings/battle-map/' },
{ label: 'External Screen', link: '/settings/external-screen/' },
{ label: 'Remote Play', link: '/settings/remote-play/' },
{ label: 'Advanced', link: '/settings/advanced/' },
{ label: 'Purchases', link: '/settings/purchases/' },
],
},
{
label: 'Reference',
items: [
{ label: 'Dice Expressions', link: '/reference/dice-expressions/' },
{ label: 'File Types', link: '/reference/file-types/' },
{ label: 'URL Scheme', link: '/reference/url-scheme/' },
{ label: 'Server API', link: '/reference/server-api/' },
{ label: 'Legacy XML', link: '/reference/legacy-xml/overview/' },
...schemaReference,
],
},
{
label: 'Development',
items: [
{ label: 'Overview', link: '/development/' },
{
label: 'Custom System',
collapsed: true,
items: [
{ label: 'Overview', link: '/system-development/' },
{ label: 'System Structure', link: '/system-development/file-structure/' },
{ label: 'Entity Definitions', link: '/system-development/entities/' },
{ label: 'Types & Collections', link: '/system-development/types/' },
{ label: 'Forms', link: '/system-development/forms/' },
{ label: 'Views', link: '/system-development/views/' },
{ label: 'Templates', link: '/system-development/templates/' },
{ label: 'Themes', link: '/system-development/themes/' },
{ label: 'Configuration & Filters', link: '/system-development/config/' },
{ label: 'Migrations', link: '/system-development/migrations/' },
{ label: 'Packaging', link: '/system-development/packaging/' },
],
},
],
},
],
}),
],
});