-
Notifications
You must be signed in to change notification settings - Fork 0
/
astro.config.mjs
67 lines (61 loc) · 1.55 KB
/
astro.config.mjs
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
// @ts-check
import { defineConfig } from 'astro/config';
import { pluginCollapsibleSections } from '@expressive-code/plugin-collapsible-sections'
import { transformerMetaHighlight } from '@shikijs/transformers'
import cloudflareRedirects from 'astro-cloudflare-redirects';
import expressiveCode from 'astro-expressive-code';
import mdx from '@astrojs/mdx';
import react from '@astrojs/react';
import sitemap from '@astrojs/sitemap';
import tailwind from '@astrojs/tailwind';
import { remarkDeruntify } from './config/remark.mjs';
// https://astro.build/config
export default defineConfig({
experimental: {
clientPrerender: true,
},
integrations: [
expressiveCode({
defaultProps: { wrap: true },
plugins: [pluginCollapsibleSections()],
styleOverrides: {
codeFontFamily: 'var(--font-mono)',
uiFontFamily: 'var(--font-main)',
},
themes: ['vesper', 'github-light'],
}),
mdx(),
react(),
sitemap(),
tailwind({
applyBaseStyles: false,
}),
cloudflareRedirects({
redirectsFile: './src/_redirects',
})
],
markdown: {
remarkPlugins: [
remarkDeruntify,
],
shikiConfig: {
theme: 'catppuccin-mocha',
transformers: [
{
pre(node) {
node.properties.class += ' not-prose';
},
},
transformerMetaHighlight(),
],
wrap: true,
}
},
output: 'static',
prefetch: {
prefetchAll: true,
defaultStrategy: 'viewport',
},
site: 'https://kristianfreeman.com',
trailingSlash: 'never',
});