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 */} Alvalens

{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}, `)} +
- {project.github && ( + {project.code && ( item.show === true + ); useEffect(() => { window.scrollTo(0, 0); @@ -205,7 +207,7 @@ export default function Page() {
-
+

))}
+ {/* view in archive btn */}