diff --git a/packages/web/src/components/mdx/anchor.astro b/packages/web/src/components/anchor.astro
similarity index 100%
rename from packages/web/src/components/mdx/anchor.astro
rename to packages/web/src/components/anchor.astro
diff --git a/packages/web/src/components/composite/breadcrumbs.astro b/packages/web/src/components/composite/breadcrumbs.astro
index 414a16df..3cf94bd2 100644
--- a/packages/web/src/components/composite/breadcrumbs.astro
+++ b/packages/web/src/components/composite/breadcrumbs.astro
@@ -1,5 +1,5 @@
---
-import Anchor from "@components/mdx/anchor.astro";
+import Anchor from "@components/anchor.astro";
export interface PathFragment {
absolute: string;
diff --git a/packages/web/src/components/composite/codeblock.astro b/packages/web/src/components/composite/codeblock.astro
index 0ab61a75..7b80bdeb 100644
--- a/packages/web/src/components/composite/codeblock.astro
+++ b/packages/web/src/components/composite/codeblock.astro
@@ -1,6 +1,6 @@
---
import { codeToHast } from "shiki";
-import Pre from "~/components/mdx/pre.astro";
+import Pre from "@components/pre.astro";
import { toHtml } from "hast-util-to-html";
export interface Props {
diff --git a/packages/web/src/components/composite/post-preview.astro b/packages/web/src/components/composite/post-preview.astro
index e5cd74f6..47927424 100644
--- a/packages/web/src/components/composite/post-preview.astro
+++ b/packages/web/src/components/composite/post-preview.astro
@@ -1,7 +1,7 @@
---
import type { CollectionEntry } from "astro:content";
-import Typography from "@components/mdx/typography.astro";
-import Anchor from "@components/mdx/anchor.astro";
+import Typography from "@components/typography.astro";
+import Anchor from "@components/anchor.astro";
import remarkParse from "remark-parse";
import remarkGfm from "remark-gfm";
import remarkRetext from "remark-retext";
diff --git a/packages/web/src/components/composite/publication.astro b/packages/web/src/components/composite/publication.astro
index 067c5bd4..b980e0fa 100644
--- a/packages/web/src/components/composite/publication.astro
+++ b/packages/web/src/components/composite/publication.astro
@@ -1,6 +1,6 @@
---
import type { CollectionEntry } from "astro:content";
-import Anchor from "../mdx/anchor.astro";
+import Anchor from "../anchor.astro";
export interface Props {
pub: CollectionEntry<"pub">;
diff --git a/packages/web/src/components/composite/tags.astro b/packages/web/src/components/composite/tags.astro
index 44424544..f5c999b9 100644
--- a/packages/web/src/components/composite/tags.astro
+++ b/packages/web/src/components/composite/tags.astro
@@ -1,5 +1,5 @@
---
-import Anchor from "@components/mdx/anchor.astro";
+import Anchor from "@components/anchor.astro";
export interface Props {
tags: string[];
diff --git a/packages/web/src/components/composite/top-profile.astro b/packages/web/src/components/composite/top-profile.astro
index 84ef415c..201df87c 100644
--- a/packages/web/src/components/composite/top-profile.astro
+++ b/packages/web/src/components/composite/top-profile.astro
@@ -1,7 +1,7 @@
---
import Picture from "astro/components/Picture.astro";
import MyIcon from "@asset/icon.webp";
-import Anchor from "@components/mdx/anchor.astro";
+import Anchor from "@components/anchor.astro";
import { Icon } from "astro-icon/components";
export interface Props {
diff --git a/packages/web/src/components/mdx/heading-inner.astro b/packages/web/src/components/heading-inner.astro
similarity index 100%
rename from packages/web/src/components/mdx/heading-inner.astro
rename to packages/web/src/components/heading-inner.astro
diff --git a/packages/web/src/components/mdx/heading1.astro b/packages/web/src/components/heading1.astro
similarity index 100%
rename from packages/web/src/components/mdx/heading1.astro
rename to packages/web/src/components/heading1.astro
diff --git a/packages/web/src/components/mdx/heading2.astro b/packages/web/src/components/heading2.astro
similarity index 100%
rename from packages/web/src/components/mdx/heading2.astro
rename to packages/web/src/components/heading2.astro
diff --git a/packages/web/src/components/mdx/code.astro b/packages/web/src/components/mdx/code.astro
deleted file mode 100644
index c1af993f..00000000
--- a/packages/web/src/components/mdx/code.astro
+++ /dev/null
@@ -1,20 +0,0 @@
----
-export interface Props {
- code?: string;
- lang?: string;
-}
----
-
-
-
-
diff --git a/packages/web/src/components/mdx/heading3.astro b/packages/web/src/components/mdx/heading3.astro
deleted file mode 100644
index 4b0932f9..00000000
--- a/packages/web/src/components/mdx/heading3.astro
+++ /dev/null
@@ -1,29 +0,0 @@
----
-import HeadingInner from "./heading-inner.astro";
-interface Props {
- id?: string;
-}
----
-
-
-
-
-
-
diff --git a/packages/web/src/components/mdx/heading4.astro b/packages/web/src/components/mdx/heading4.astro
deleted file mode 100644
index 2daaa009..00000000
--- a/packages/web/src/components/mdx/heading4.astro
+++ /dev/null
@@ -1,29 +0,0 @@
----
-import HeadingInner from "./heading-inner.astro";
-interface Props {
- id?: string;
-}
----
-
-
-
-
-
-
diff --git a/packages/web/src/components/mdx/heading5.astro b/packages/web/src/components/mdx/heading5.astro
deleted file mode 100644
index ca3de552..00000000
--- a/packages/web/src/components/mdx/heading5.astro
+++ /dev/null
@@ -1,29 +0,0 @@
----
-import HeadingInner from "./heading-inner.astro";
-interface Props {
- id?: string;
-}
----
-
-
-
-
-
-
diff --git a/packages/web/src/components/mdx/heading6.astro b/packages/web/src/components/mdx/heading6.astro
deleted file mode 100644
index 00c0c7d5..00000000
--- a/packages/web/src/components/mdx/heading6.astro
+++ /dev/null
@@ -1,30 +0,0 @@
----
-import HeadingInner from "./heading-inner.astro";
-
-interface Props {
- id?: string;
-}
----
-
-
-
-
-
-
diff --git a/packages/web/src/components/mdx/hr.astro b/packages/web/src/components/mdx/hr.astro
deleted file mode 100644
index 221b1815..00000000
--- a/packages/web/src/components/mdx/hr.astro
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
diff --git a/packages/web/src/components/mdx/image.astro b/packages/web/src/components/mdx/image.astro
deleted file mode 100644
index dc552db8..00000000
--- a/packages/web/src/components/mdx/image.astro
+++ /dev/null
@@ -1,31 +0,0 @@
----
-import { Picture } from "astro:assets";
-
-export interface Props {
- alt: string;
- src: ImageMetadata;
-}
----
-
-
-
-
diff --git a/packages/web/src/components/mdx/ordered-list.astro b/packages/web/src/components/mdx/ordered-list.astro
deleted file mode 100644
index 703c6186..00000000
--- a/packages/web/src/components/mdx/ordered-list.astro
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
diff --git a/packages/web/src/components/mdx/unordered-list.astro b/packages/web/src/components/mdx/unordered-list.astro
deleted file mode 100644
index c6902b27..00000000
--- a/packages/web/src/components/mdx/unordered-list.astro
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
diff --git a/packages/web/src/components/mdx/pre.astro b/packages/web/src/components/pre.astro
similarity index 100%
rename from packages/web/src/components/mdx/pre.astro
rename to packages/web/src/components/pre.astro
diff --git a/packages/web/src/components/mdx/section.astro b/packages/web/src/components/section.astro
similarity index 100%
rename from packages/web/src/components/mdx/section.astro
rename to packages/web/src/components/section.astro
diff --git a/packages/web/src/components/mdx/typography.astro b/packages/web/src/components/typography.astro
similarity index 100%
rename from packages/web/src/components/mdx/typography.astro
rename to packages/web/src/components/typography.astro
diff --git a/packages/web/src/pages/index.astro b/packages/web/src/pages/index.astro
index c18a220f..56a5c53e 100644
--- a/packages/web/src/pages/index.astro
+++ b/packages/web/src/pages/index.astro
@@ -1,14 +1,14 @@
---
import Base from "@layouts/Base.astro";
import { getCollection } from "astro:content";
-import Section from "@components/mdx/section.astro";
-import Heading2 from "@components/mdx/heading2.astro";
+import Section from "@components/section.astro";
+import Heading2 from "@components/heading2.astro";
import Event from "@components/composite/events.astro";
import NameAndIcon from "@components/composite/top-profile.astro";
-import Typography from "@components/mdx/typography.astro";
+import Typography from "@components/typography.astro";
import PostPreviewList from "@components/composite/post-preview-list.astro";
import PublicationList from "@components/composite/publication-list.astro";
-import Anchor from "@components/mdx/anchor.astro";
+import Anchor from "@components/anchor.astro";
import { Icon } from "astro-icon/components";
import Codeblock from "@components/composite/codeblock.astro";
diff --git a/packages/web/src/pages/notice.astro b/packages/web/src/pages/notice.astro
index 7c7ed460..3112e0d5 100644
--- a/packages/web/src/pages/notice.astro
+++ b/packages/web/src/pages/notice.astro
@@ -1,8 +1,8 @@
---
import Base from "@layouts/Base.astro";
-import Anchor from "@components/mdx/anchor.astro";
-import Heading1 from "@components/mdx/heading1.astro";
-import Heading2 from "@components/mdx/heading2.astro";
+import Anchor from "@components/anchor.astro";
+import Heading1 from "@components/heading1.astro";
+import Heading2 from "@components/heading2.astro";
import licenseChecker, { type ModuleInfos } from "license-checker-rseidelsohn";
import { getCollection } from "astro:content";
diff --git a/packages/web/src/pages/post/[...slug].astro b/packages/web/src/pages/post/[...slug].astro
index 02fdc1dc..55406106 100644
--- a/packages/web/src/pages/post/[...slug].astro
+++ b/packages/web/src/pages/post/[...slug].astro
@@ -3,7 +3,7 @@ import Base from "@layouts/Base.astro";
import type { GetStaticPaths } from "astro";
import { getEntry } from "astro:content";
import { getCollection } from "astro:content";
-import Heading1 from "@components/mdx/heading1.astro";
+import Heading1 from "@components/heading1.astro";
import { PAGE_SIZE, renderDate } from "@lib/util";
import Tags from "@components/composite/tags.astro";
import Giscus from "@components/composite/giscus.astro";
diff --git a/packages/web/src/pages/post/page/[page].astro b/packages/web/src/pages/post/page/[page].astro
index d1f3287b..116f4a05 100644
--- a/packages/web/src/pages/post/page/[page].astro
+++ b/packages/web/src/pages/post/page/[page].astro
@@ -2,7 +2,7 @@
import Base from "@layouts/Base.astro";
import type { GetStaticPaths } from "astro";
import { getCollection } from "astro:content";
-import Anchor from "@components/mdx/anchor.astro";
+import Anchor from "@components/anchor.astro";
import { PAGE_SIZE } from "@lib/util";
import Tags from "@components/composite/tags.astro";
import PostPreviewList from "@components/composite/post-preview-list.astro";
diff --git a/packages/web/src/pages/post/tag/[tag].astro b/packages/web/src/pages/post/tag/[tag].astro
index 2b3322fb..cde84214 100644
--- a/packages/web/src/pages/post/tag/[tag].astro
+++ b/packages/web/src/pages/post/tag/[tag].astro
@@ -2,7 +2,7 @@
import Base from "@layouts/Base.astro";
import type { GetStaticPaths } from "astro";
import { getCollection } from "astro:content";
-import Heading1 from "@components/mdx/heading1.astro";
+import Heading1 from "@components/heading1.astro";
import PostPreviewList from "@components/composite/post-preview-list.astro";
export const getStaticPaths = (async () => {