diff --git a/app/projects/(project-card)/index.jsx b/app/projects/(project-card)/index.jsx
index 731439c..06f312c 100644
--- a/app/projects/(project-card)/index.jsx
+++ b/app/projects/(project-card)/index.jsx
@@ -22,13 +22,13 @@ export default function projectCard({project, index, activeCategory}){
{" "}
{/* Add relative here */}
{project.year}
@@ -37,9 +37,13 @@ export default function projectCard({project, index, activeCategory}){
{project.title}
-
{project.desc}
+
+ {project.desc[0].length > 125
+ ? `${project.desc[0].slice(0, 125)}...`
+ : project.desc[0]}
+
- {project.tech.split(",").map((t, index) => (
+ {project.tech.map((t, index) => (
diff --git a/app/projects/[slug]/page.jsx b/app/projects/[slug]/page.jsx
index 8719d7c..8010df5 100644
--- a/app/projects/[slug]/page.jsx
+++ b/app/projects/[slug]/page.jsx
@@ -198,6 +198,7 @@ function Page({ params }) {
className="mb-5 h-auto max-h-screen max-w-7xl mx-auto"
width={1920}
height={1080}
+ blurDataURL={image}
layout="responsive"
objectFit="contain"
/>
diff --git a/app/projects/archive/page.jsx b/app/projects/archive/page.jsx
index e98d33e..3e889be 100644
--- a/app/projects/archive/page.jsx
+++ b/app/projects/archive/page.jsx
@@ -6,110 +6,10 @@ import { faGithub } from "@fortawesome/free-brands-svg-icons";
import { faArrowUpRightFromSquare } from "@fortawesome/free-solid-svg-icons";
import FixedButon from "@/components/FixedButton";
import { faChevronLeft } from "@fortawesome/free-solid-svg-icons";
-const projects = [
- {
- year: "2024",
- title: "Generative Trivia",
- tech: "NextJS, Gemini AI, TailwindCSS, ShadcnUI, Firebase",
- github: "https://github.com/Alvalens/generative-trivia",
- preview: "https://generative-trivia.vercel.app/",
- },
- {
- year: "2024",
- title: "Saku Senyum",
- tech: "NextJS, TypeScript, TailwindCSS, ShadcnUI, Prisma, MySQL",
- },
- {
- year: "2024",
- title: "SIMADUN",
- tech: "Laravel, Bootstrap, JQuery, MySQL, DataTables",
- },
- {
- year: "2023",
- title: "LUDOang",
- tech: "Python, Pygame, OpenGL",
- github: "https://github.com/Alvalens/ludo-game",
- preview:
- "https://github.com/Alvalens/ludo-game/releases/tag/pre-release",
- },
- {
- year: "2023",
- title: "React Realtime Chat",
- tech: "Javascript, React Js, Firebase, Daisy UI",
- github: "https://github.com/Alvalens/react-realtime-chat",
- preview: "https://react-chat-rouge.vercel.app",
- },
- {
- year: "2023",
- title: "React Tools",
- tech: "Javascript, React Js, TailwindCSS",
- github: "https://github.com/Alvalens/react-tools",
- preview: "react-tools-flax.vercel.app",
- },
- {
- year: "2023",
- title: "Aleph Discord Bot",
- tech: "Python, Serp API, Discord.py",
- github: "https://github.com/Alvalens/aleph-discord-bot",
- },
- {
- year: "2023",
- title: "LPTK CUP UM 2023",
- tech: "PHP, Laravel, Bootstrap, MySQL, jQuery, DataTables",
- github: "",
- preview: "",
- },
- {
- year: "2023",
- title: "NU INO Website",
- tech: "PHP, Laravel, Livewire Bootstrap, MySQL, jQuery, DataTables",
- github: "",
- preview: "",
- },
- {
- year: "2023",
- title: "Unmuh Jember Landing Page",
- tech: "HTML, CSS, Javascript",
- github: "https://github.com/Alvalens/unmuh-jember-landing-page",
- preview: "https://alvalens.github.io/unmuh-jember-landing-page/",
- },
- {
- year: "2022",
- title: "Alvalens Website",
- tech: "Javascript, Next Js, TailwindCSS",
- github: "https://github.com/Alvalens/Alvalens-porto-1",
- preview: "https://alvalens.my.id",
- },
- {
- year: "2023",
- title: "Python audio tranlator",
- tech: "Python, Assembly AI",
- github: "https://github.com/Alvalens/python-audio-translation",
- preview: "",
- },
- {
- year: "2023",
- title: "A4 Education website",
- tech: "PHP, Laravel, Bootstrap, MySQL, jQuery, DataTables",
- github: "https://github.com/Alvalens/A4",
- preview: "",
- },
- {
- year: "2023",
- title: "Cry Cast crypto forecast",
- tech: "PHP, Laravel, Bootstrap, MySQL",
- github: "https://github.com/Alvalens/cry-cast",
- preview: "",
- },
- {
- year: "2023",
- title: "Mini Harbor",
- tech: "Python, Pygame",
- github: "https://github.com/Alvalens/mini-harbor",
- preview: "",
- },
-];
+import Projects from "@/json/data.json"
+
export default function Page () {
+ const projects = Projects.Projects
return (
<>
@@ -188,12 +88,14 @@ export default function Page () {
className="hover:shadow-md transition-all ease duration-500">
{project.year} |
{project.title} |
- {project.tech} |
+
+ {project.tech.map((t) => `${t}, `)}
+ |
-
+
))}
+
{/* view in archive btn */}
|