-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathastro.config.mjs
More file actions
128 lines (124 loc) · 3.42 KB
/
astro.config.mjs
File metadata and controls
128 lines (124 loc) · 3.42 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
// @ts-check
import { defineConfig } from "astro/config";
import starlight from "@astrojs/starlight";
import { remarkAlert } from "remark-github-blockquote-alert";
import { siteConfig } from "./src/site.config.ts";
// Netlify specific
const isProduction =
process.env.CONTEXT === "production" || !process.env.CONTEXT;
// https://astro.build/config
export default defineConfig({
site: siteConfig.site,
markdown: {
remarkPlugins: [remarkAlert],
},
integrations: [
starlight({
title: siteConfig.title,
description: siteConfig.description,
titleDelimiter: "-",
logo: {
light: "./src/assets/logo--dark.svg",
dark: "./src/assets/logo--light.svg",
replacesTitle: true,
},
favicon: "/favicon.svg",
pagination: siteConfig.pagination,
social: [
{
icon: "github",
label: "GitHub",
href: siteConfig.github,
},
],
head: [
{
tag: "meta",
attrs: {
name: "robots",
content: isProduction ? "noindex, nofollow" : "noindex, nofollow",
},
},
{
tag: "script",
attrs: { type: "application/ld+json" },
content: JSON.stringify({
"@context": "https://schema.org",
"@type": "Organization",
name: "Open Home Foundation",
url: "https://www.openhomefoundation.org",
description:
"The Open Home Foundation fights for the fundamental principles of privacy, choice, and sustainability for smart homes.",
sameAs: ["https://github.com/OpenHomeFoundation"],
}),
},
{
tag: "link",
attrs: {
rel: "icon",
href: "/favicon.svg",
},
},
{
tag: "script",
content: `document.addEventListener('keydown', function(e) {
if (e.key === '/' && !['INPUT', 'TEXTAREA', 'SELECT'].includes(document.activeElement?.tagName)) {
e.preventDefault();
document.querySelector('button[data-open-modal]')?.click();
}
});`,
},
{
tag: "meta",
attrs: {
property: "og:image",
content: `${siteConfig.site}/assets/banner.png`,
},
},
{
tag: "meta",
attrs: {
name: "twitter:image",
content: `${siteConfig.site}/assets/banner.png`,
},
},
{
tag: "meta",
attrs: {
name: "twitter:card",
content: "summary_large_image",
},
},
],
customCss: ["./src/styles/custom.css"],
sidebar: [
{
label: "Overview",
items: [
{ label: "Introduction", link: "/" },
{ label: "Brand architecture", link: "/overview/brand-architecture/" },
],
},
{
label: "Open Home Foundation",
autogenerate: { directory: "open-home-foundation" },
},
{
label: "Home Assistant",
autogenerate: { directory: "home-assistant" },
},
{
label: "Music Assistant",
autogenerate: { directory: "music-assistant" },
},
{
label: "ESPHome",
autogenerate: { directory: "esphome" },
},
],
components: {
Head: "./src/components/Head.astro",
},
}),
],
});