diff --git a/components/mdx/ProjectPreviewGrid.tsx b/components/mdx/ProjectPreviewGrid.tsx
index d284763..a70fad4 100644
--- a/components/mdx/ProjectPreviewGrid.tsx
+++ b/components/mdx/ProjectPreviewGrid.tsx
@@ -1,3 +1,7 @@
+'use client';
+
+import { useState } from 'react';
+
type PreviewItem = {
title: string;
image: string;
@@ -7,26 +11,26 @@ type props = {
items?: PreviewItem[];
};
+function PreviewImage({ title, image }: PreviewItem) {
+ const [failed, setFailed] = useState(false);
+
+ if (failed) return null;
+
+ return (
+
setFailed(true)}
+ />
+ );
+}
+
export function ProjectPreviewGrid({ items = [] }: props) {
return (
1 ? 'lg:grid-cols-2' : ''}`}>
{items.map((item) => (
-
- {item.image ? (
-

- ) : (
-
- {item.title}
-
- )}
-
+
))}
);
diff --git a/public/images/projects/evereast/preview-2.png b/public/images/projects/evereast/preview-2.png
new file mode 100644
index 0000000..948c4b8
Binary files /dev/null and b/public/images/projects/evereast/preview-2.png differ
diff --git a/public/images/projects/mgdev/cover.png b/public/images/projects/mgdev/cover.png
index 5910746..37e9d76 100644
Binary files a/public/images/projects/mgdev/cover.png and b/public/images/projects/mgdev/cover.png differ
diff --git a/public/images/projects/mgdev/preview-1.png b/public/images/projects/mgdev/preview-1.png
index 5910746..37e9d76 100644
Binary files a/public/images/projects/mgdev/preview-1.png and b/public/images/projects/mgdev/preview-1.png differ
diff --git a/public/images/projects/mgdev/preview-2.png b/public/images/projects/mgdev/preview-2.png
new file mode 100644
index 0000000..dc28403
Binary files /dev/null and b/public/images/projects/mgdev/preview-2.png differ
diff --git a/public/images/projects/threadbase/preview-2.png b/public/images/projects/threadbase/preview-2.png
new file mode 100644
index 0000000..718a1fc
Binary files /dev/null and b/public/images/projects/threadbase/preview-2.png differ