forked from
quillmatiq.com/augment
Fork of Chiri for Astro for my blog
1import { defineConfig } from 'astro/config'
2import mdx from '@astrojs/mdx'
3import sitemap from '@astrojs/sitemap'
4import playformInline from '@playform/inline'
5import remarkMath from 'remark-math'
6import remarkDirective from 'remark-directive'
7import rehypeKatex from 'rehype-katex'
8import remarkEmbeddedMedia from './src/plugins/remark-embedded-media.mjs'
9import remarkReadingTime from './src/plugins/remark-reading-time.mjs'
10import rehypeCleanup from './src/plugins/rehype-cleanup.mjs'
11import rehypeImageProcessor from './src/plugins/rehype-image-processor.mjs'
12import rehypeCopyCode from './src/plugins/rehype-copy-code.mjs'
13import remarkTOC from './src/plugins/remark-toc.mjs'
14import { themeConfig } from './src/config'
15import { imageConfig } from './src/utils/image-config'
16import path from 'path'
17import netlify from '@astrojs/netlify'
18import rehypeExternalLinks from 'rehype-external-links';
19
20export default defineConfig({
21 adapter: netlify(), // Set adapter for deployment, or set `linkCard` to `false` in `src/config.ts`
22 site: themeConfig.site.website,
23 image: {
24 service: {
25 entrypoint: 'astro/assets/services/sharp',
26 config: imageConfig
27 }
28 },
29 markdown: {
30 shikiConfig: {
31 theme: 'css-variables',
32 wrap: false
33 },
34 remarkPlugins: [remarkMath, remarkDirective, remarkEmbeddedMedia, remarkReadingTime, remarkTOC],
35 rehypePlugins: [
36 rehypeKatex,
37 rehypeCleanup,
38 rehypeImageProcessor,
39 rehypeCopyCode,
40 [rehypeExternalLinks, { target: '_blank', rel: ['nofollow'] }]
41 ]
42 },
43 integrations: [
44 playformInline({
45 Exclude: [(file) => file.toLowerCase().includes('katex')]
46 }),
47 mdx(),
48 sitemap()
49 ],
50 vite: {
51 resolve: {
52 alias: {
53 '@': path.resolve('./src')
54 }
55 }
56 },
57 devToolbar: {
58 enabled: false
59 }
60})