/ svelte.config.js
svelte.config.js
1 import 'dotenv/config'; 2 3 import adapter from '@sveltejs/adapter-node'; 4 import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'; 5 import { mdsvex } from 'mdsvex'; 6 import rehypeAutolinkHeadings from 'rehype-autolink-headings'; 7 import rehypeSlug from 'rehype-slug'; 8 import rehypeLinks from 'rehype-external-links'; 9 import rehypeImageSize from 'rehype-img-size'; 10 11 /** @type {import('@sveltejs/kit').Config} */ 12 const config = { 13 // Ensures both .svelte and .md files are treated as components (can be imported and used anywhere, or used as pages) 14 extensions: ['.svelte', '.md'], 15 16 // Consult https://github.com/sveltejs/svelte-preprocess 17 // for more information about preprocessors 18 preprocess: [ 19 vitePreprocess({ 20 postcss: true, 21 script: true, 22 }), 23 mdsvex({ 24 // The default mdsvex extension is .svx; this overrides that. 25 extensions: ['.md'], 26 layout: '/src/lib/components/blog/article-layout/article-layout.svelte', 27 rehypePlugins: [ 28 rehypeSlug, 29 rehypeAutolinkHeadings, 30 [rehypeLinks, { target: '_blank' }], 31 [rehypeImageSize, { dir: 'static' }], 32 ], 33 }), 34 ], 35 36 kit: { 37 adapter: adapter(), 38 prerender: { 39 origin: process.env.PUBLIC_BASE_URL, 40 }, 41 }, 42 }; 43 44 export default config;