init: project setup
This commit is contained in:
90
astro.config.ts
Normal file
90
astro.config.ts
Normal file
@@ -0,0 +1,90 @@
|
||||
import { defineConfig } from 'astro/config'
|
||||
|
||||
import mdx from '@astrojs/mdx'
|
||||
import react from '@astrojs/react'
|
||||
import sitemap from '@astrojs/sitemap'
|
||||
import icon from 'astro-icon'
|
||||
|
||||
import expressiveCode from 'astro-expressive-code'
|
||||
import { rehypeHeadingIds } from '@astrojs/markdown-remark'
|
||||
import rehypeExternalLinks from 'rehype-external-links'
|
||||
import rehypeKatex from 'rehype-katex'
|
||||
import rehypePrettyCode from 'rehype-pretty-code'
|
||||
import remarkEmoji from 'remark-emoji'
|
||||
import remarkMath from 'remark-math'
|
||||
import remarkSectionize from 'remark-sectionize'
|
||||
import rehypeDocument from 'rehype-document'
|
||||
|
||||
import { pluginCollapsibleSections } from '@expressive-code/plugin-collapsible-sections'
|
||||
import { pluginLineNumbers } from '@expressive-code/plugin-line-numbers'
|
||||
|
||||
import tailwindcss from '@tailwindcss/vite'
|
||||
|
||||
export default defineConfig({
|
||||
site: 'https://cojocarudavid.me',
|
||||
integrations: [
|
||||
expressiveCode({
|
||||
themes: ['catppuccin-latte', 'ayu-dark'],
|
||||
plugins: [pluginCollapsibleSections(), pluginLineNumbers()],
|
||||
useDarkModeMediaQuery: true,
|
||||
defaultProps: {
|
||||
wrap: true,
|
||||
collapseStyle: 'collapsible-auto',
|
||||
overridesByLang: {
|
||||
'ansi,bat,bash,batch,cmd,console,powershell,ps,ps1,psd1,psm1,sh,shell,shellscript,shellsession,text,zsh':
|
||||
{
|
||||
showLineNumbers: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
mdx(),
|
||||
react(),
|
||||
sitemap({
|
||||
changefreq: 'weekly',
|
||||
priority: 0.7,
|
||||
lastmod: new Date(),
|
||||
}),
|
||||
icon(),
|
||||
],
|
||||
vite: {
|
||||
plugins: [tailwindcss()],
|
||||
},
|
||||
server: {
|
||||
port: 3000,
|
||||
host: true,
|
||||
},
|
||||
devToolbar: {
|
||||
enabled: false,
|
||||
},
|
||||
markdown: {
|
||||
syntaxHighlight: false,
|
||||
rehypePlugins: [
|
||||
[
|
||||
rehypeDocument,
|
||||
{
|
||||
css: 'https://cdn.jsdelivr.net/npm/katex@0.16.21/dist/katex.min.css',
|
||||
},
|
||||
],
|
||||
[
|
||||
rehypeExternalLinks,
|
||||
{
|
||||
target: '_blank',
|
||||
rel: ['nofollow', 'noreferrer', 'noopener'],
|
||||
},
|
||||
],
|
||||
rehypeHeadingIds,
|
||||
rehypeKatex,
|
||||
[
|
||||
rehypePrettyCode,
|
||||
{
|
||||
theme: {
|
||||
light: 'catppuccin-latte',
|
||||
dark: 'ayu-dark',
|
||||
},
|
||||
},
|
||||
],
|
||||
],
|
||||
remarkPlugins: [remarkMath, remarkEmoji, remarkSectionize],
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user