From 08cd97ef521c738882d7bbc8a8aaf05d4f44fa6f Mon Sep 17 00:00:00 2001 From: yogyy Date: Fri, 15 Nov 2024 20:58:46 +0700 Subject: [PATCH 1/7] chore: change icons to lucide-react --- src/components/layouts/footer.tsx | 10 +++++----- src/components/project-card-simple.tsx | 7 ++++--- src/components/project-card.tsx | 7 +++++-- src/components/section/skills.tsx | 23 ++++++++--------------- src/components/ui/accordion.tsx | 12 ++++++------ src/constants/links.ts | 4 ++-- src/pages/posts/[slug].tsx | 10 +++++++--- src/pages/projects/[slug].tsx | 6 +++--- 8 files changed, 40 insertions(+), 39 deletions(-) diff --git a/src/components/layouts/footer.tsx b/src/components/layouts/footer.tsx index 7f97fb0..a993a01 100644 --- a/src/components/layouts/footer.tsx +++ b/src/components/layouts/footer.tsx @@ -1,9 +1,9 @@ import { m, useInView } from 'framer-motion'; import { GeistSans } from 'geist/font/sans'; +import { MailPlus } from 'lucide-react'; import Link from 'next/link'; import { useFeatureFlagEnabled } from 'posthog-js/react'; import { useRef } from 'react'; -import { IoMailOutline } from 'react-icons/io5'; import { SiGithub, SiLinkedin, SiX } from 'react-icons/si'; import { Spotify } from './'; import { Accent } from '../accent'; @@ -37,9 +37,9 @@ export const Footer = () => {
© 2024 yogi. -
diff --git a/src/components/project-card.tsx b/src/components/project-card.tsx index cf2724e..133de50 100644 --- a/src/components/project-card.tsx +++ b/src/components/project-card.tsx @@ -1,6 +1,6 @@ import { Project } from 'contentlayer/generated'; +import { ArrowRight } from 'lucide-react'; import Link from 'next/link'; -import { HiArrowRight } from 'react-icons/hi'; import { Icon } from './custom-icons'; import CloudinaryImg from './images/cloudinary-img'; @@ -30,7 +30,10 @@ export const ProjectCard = ({ project }: { project: Project }) => { />

See more - +

diff --git a/src/components/section/skills.tsx b/src/components/section/skills.tsx index d4b51a1..cdcddbf 100644 --- a/src/components/section/skills.tsx +++ b/src/components/section/skills.tsx @@ -1,11 +1,12 @@ import { HTMLMotionProps, m } from 'framer-motion'; -import { RiCodeSSlashFill, RiTerminalFill } from 'react-icons/ri'; +import { CodeXml, Terminal } from 'lucide-react'; import { easeOutquad } from '@/constants/framer-easing'; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '../ui/tooltip'; interface SkillSectionProps extends HTMLMotionProps<'article'> { inView?: boolean; } + export const SkillSection = ({ className, inView, ...props }: SkillSectionProps) => { return (
- +

Web development

- I have experience in web development with React and Next.js, and I am proficient in - HTML, CSS, JavaScript, and TypeScript + I have experience in web development, specializing in React and Next.js, with strong + proficiency in HTML, CSS, JavaScript, and TypeScript

- +

Other technologies

@@ -84,5 +79,3 @@ export const SkillSection = ({ className, inView, ...props }: SkillSectionProps) ); }; - -// SkillSection.displayName = 'SkillSection'; diff --git a/src/components/ui/accordion.tsx b/src/components/ui/accordion.tsx index 10bb9f0..d3fc663 100644 --- a/src/components/ui/accordion.tsx +++ b/src/components/ui/accordion.tsx @@ -1,6 +1,6 @@ import * as AccordionPrimitive from '@radix-ui/react-accordion'; +import { ChevronDown } from 'lucide-react'; import * as React from 'react'; -import { LuChevronDown } from 'react-icons/lu'; import { cn } from '@/lib/utils'; const Accordion = AccordionPrimitive.Root; @@ -21,13 +21,13 @@ const AccordionTrigger = React.forwardRef< svg]:rotate-180 data-[state=open]:text-dark-accent', - className + 'hover:text-dark-accent data-[state=open]:text-dark-accent flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180', + className, )} {...props} > {children} - + )); @@ -41,7 +41,7 @@ const AccordionContent = React.forwardRef< ref={ref} className={cn( 'overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down', - className + className, )} {...props} > @@ -50,4 +50,4 @@ const AccordionContent = React.forwardRef< )); AccordionContent.displayName = AccordionPrimitive.Content.displayName; -export { Accordion, AccordionContent,AccordionItem, AccordionTrigger }; +export { Accordion, AccordionContent, AccordionItem, AccordionTrigger }; diff --git a/src/constants/links.ts b/src/constants/links.ts index fc9b767..6d9701b 100644 --- a/src/constants/links.ts +++ b/src/constants/links.ts @@ -1,10 +1,10 @@ -import { IoNewspaperSharp } from 'react-icons/io5'; +import { FileUser } from 'lucide-react'; import { SiGithub, SiX } from 'react-icons/si'; const externalUrl = [ { href: 'https://drive.google.com/file/d/1dx-fxhVOUEDhVIEgY3d5_FTVFFh6wMKg/view', - icon: IoNewspaperSharp, + icon: FileUser, name: 'Resume', }, { diff --git a/src/pages/posts/[slug].tsx b/src/pages/posts/[slug].tsx index 382c614..6fbf8f5 100644 --- a/src/pages/posts/[slug].tsx +++ b/src/pages/posts/[slug].tsx @@ -1,9 +1,9 @@ import { allPosts } from 'contentlayer/generated'; +import { ArrowLeft } from 'lucide-react'; import { GetStaticPaths, InferGetStaticPropsType } from 'next'; import { notFound } from 'next/navigation'; import { useRouter } from 'next/navigation'; import { useEffect, useState } from 'react'; -import { HiArrowLeft } from 'react-icons/hi'; import { getTableOfContents, TableOfContents } from '@/lib/toc'; import { RootLayout } from '@/components/layouts'; import { Mdx } from '@/components/mdx/mdx-component'; @@ -47,9 +47,13 @@ export const PostsPage = ({ post }: InferGetStaticPropsType

{post.date}

diff --git a/src/pages/projects/[slug].tsx b/src/pages/projects/[slug].tsx index f7ba740..1ef7e4b 100644 --- a/src/pages/projects/[slug].tsx +++ b/src/pages/projects/[slug].tsx @@ -1,9 +1,9 @@ import { allProjects } from 'contentlayer/generated'; import { m } from 'framer-motion'; +import { Link, UserRound } from 'lucide-react'; import { InferGetStaticPropsType } from 'next'; import { notFound } from 'next/navigation'; import { useEffect, useState } from 'react'; -import { HiLink, HiUser } from 'react-icons/hi'; import { SiGithub } from 'react-icons/si'; import { getTableOfContents, TableOfContents } from '@/lib/toc'; import CloudinaryImg from '@/components/images/cloudinary-img'; @@ -66,7 +66,7 @@ const ProjectsPage = ({ proj }: InferGetStaticPropsType)

{proj.description}

- +

{proj.category}

@@ -78,7 +78,7 @@ const ProjectsPage = ({ proj }: InferGetStaticPropsType)
-
- + Open Live Site
From 90eab9af54df876a551b92b9d9dc5056e10453d0 Mon Sep 17 00:00:00 2001 From: yogyy Date: Sun, 17 Nov 2024 15:10:52 +0700 Subject: [PATCH 2/7] feat: add some simple icons add it's types --- src/components/icons/simple-icons.tsx | 324 ++++++++++++++++++++++++++ src/components/icons/type.ts | 20 ++ 2 files changed, 344 insertions(+) create mode 100644 src/components/icons/simple-icons.tsx create mode 100644 src/components/icons/type.ts diff --git a/src/components/icons/simple-icons.tsx b/src/components/icons/simple-icons.tsx new file mode 100644 index 0000000..f0cc2e3 --- /dev/null +++ b/src/components/icons/simple-icons.tsx @@ -0,0 +1,324 @@ +import { IconBaseProps } from './type'; + +export function Mongodb(props: IconBaseProps) { + return ( + + MongoDB + + + ); +} + +export function Nextdotjs(props: IconBaseProps) { + return ( + + Next.js + + + ); +} + +export function Radixui(props: IconBaseProps) { + return ( + + Radix UI + + + ); +} + +export function React(props: IconBaseProps) { + return ( + + React + + + ); +} + +export function Reactquery(props: IconBaseProps) { + return ( + + React Query + + + ); +} + +export function Tailwindcss(props: IconBaseProps) { + return ( + + Tailwind CSS + + + ); +} + +export function Hono(props: IconBaseProps) { + return ( + + Hono + + + ); +} + +export function Nodedotjs(props: IconBaseProps) { + return ( + + Node.js + + + ); +} + +export function Upstash(props: IconBaseProps) { + return ( + + Upstash + + + ); +} + +export function Github(props: IconBaseProps) { + return ( + + GitHub + + + ); +} + +export function LinkedIn(props: IconBaseProps) { + return ( + + LinkedIn + + + ); +} + +export function X(props: IconBaseProps) { + return ( + + X + + + ); +} + +export function Spotify(props: IconBaseProps) { + return ( + + Spotify + + + ); +} + +export function Fastify(props: IconBaseProps) { + return ( + + Fastify + + + ); +} + +export function Javascript(props: IconBaseProps) { + return ( + + JavaScript + + + ); +} + +export function Git(props: IconBaseProps) { + return ( + + Git + + + ); +} + +export function Graphql(props: IconBaseProps) { + return ( + + GraphQL + + + ); +} + +export function Postgresql(props: IconBaseProps) { + return ( + + PostgreSQL + + + ); +} + +export function Drizzle(props: IconBaseProps) { + return ( + + PostgreSQL + + + ); +} diff --git a/src/components/icons/type.ts b/src/components/icons/type.ts new file mode 100644 index 0000000..0104b96 --- /dev/null +++ b/src/components/icons/type.ts @@ -0,0 +1,20 @@ +export interface IconTree { + tag: string; + attr: { + [key: string]: string; + }; + child: IconTree[]; +} +export declare function GenIcon(data: IconTree): (props: IconBaseProps) => JSX.Element; +export interface IconBaseProps extends React.SVGAttributes { + children?: React.ReactNode; + size?: string | number; + color?: string; + title?: string; +} +export declare type IconType = (props: IconBaseProps) => JSX.Element; +export declare function IconBase( + props: IconBaseProps & { + attr?: Record; + }, +): JSX.Element; From 65a0829d15225b53a6eeadfa3898069c3b7b6cb9 Mon Sep 17 00:00:00 2001 From: yogyy Date: Sun, 17 Nov 2024 15:37:29 +0700 Subject: [PATCH 3/7] fix: remove trpc from project's stack --- src/content/projects/burbir.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/content/projects/burbir.mdx b/src/content/projects/burbir.mdx index 4c3e57d..a4bd818 100644 --- a/src/content/projects/burbir.mdx +++ b/src/content/projects/burbir.mdx @@ -4,7 +4,7 @@ description: A Twitter/X web clone category: Personal Project banner: https://res.cloudinary.com/dpegakmzh/image/upload/v1702485419/burbir_thumb_etzwpd.webp url: https://burungbiru.vercel.app -techs: NextJS, Tailwind, RadixUI, ReactQuery, Trpc, Upstash +techs: NextJS, Tailwind, RadixUI, ReactQuery, Upstash github: https://github.com/yogyy/burungbiru --- @@ -33,7 +33,7 @@ The project aims to replicate essential features of Twitter, including posting t ## Tech Stack Used
- +
This project uses a range of technologies & libraries, including: From 94b74459f42a3561c8d52b08d5a9fa91fff3f628 Mon Sep 17 00:00:00 2001 From: yogyy Date: Sun, 17 Nov 2024 15:43:19 +0700 Subject: [PATCH 4/7] fix: change import icons --- src/components/custom-icons.tsx | 36 ++++---- src/components/icons/icons.tsx | 114 -------------------------- src/components/icons/simple-icons.tsx | 34 +++++++- src/components/layouts/footer.tsx | 8 +- src/components/layouts/spotify.tsx | 7 +- src/components/section/tech.tsx | 51 ++++++------ src/components/tech-icons.tsx | 46 ++++------- src/constants/links.ts | 6 +- src/pages/projects/[slug].tsx | 4 +- 9 files changed, 104 insertions(+), 202 deletions(-) delete mode 100644 src/components/icons/icons.tsx diff --git a/src/components/custom-icons.tsx b/src/components/custom-icons.tsx index 7733b58..b7ba65d 100644 --- a/src/components/custom-icons.tsx +++ b/src/components/custom-icons.tsx @@ -1,29 +1,27 @@ import { - SiHeadlessui, - SiMongodb, - SiNextdotjs, - SiRadixui, - SiReact, - SiReactquery, - SiTailwindcss, - SiTrpc, - SiUpstash, -} from 'react-icons/si'; + Mongodb, + Nextdotjs, + Radixui, + React, + Reactquery, + Tailwindcss, + Upstash, +} from './icons/simple-icons'; const Icons: { [key: string]: React.ComponentType } = { - NextJS: SiNextdotjs, - Tailwind: SiTailwindcss, - HeadlessUI: SiHeadlessui, - ReactJS: SiReact, - RadixUI: SiRadixui, - MongoDB: SiMongodb, - ReactQuery: SiReactquery, - Trpc: SiTrpc, - Upstash: SiUpstash, + NextJS: Nextdotjs, + Tailwind: Tailwindcss, + ReactJS: React, + RadixUI: Radixui, + MongoDB: Mongodb, + ReactQuery: Reactquery, + Upstash: Upstash, }; + interface IconProps extends React.HTMLProps { icon: keyof typeof Icons; } + export const Icon = ({ icon, ...props }: IconProps) => { const IconComponent = Icons[icon]; return ; diff --git a/src/components/icons/icons.tsx b/src/components/icons/icons.tsx deleted file mode 100644 index a8affcc..0000000 --- a/src/components/icons/icons.tsx +++ /dev/null @@ -1,114 +0,0 @@ -import { IconBaseProps } from 'react-icons/lib'; - -export function LogoFacebook() { - return ( - - - - ); -} -export function LogoGithub() { - return ( - - - - ); -} -export function LogoLinkedin() { - return ( - - - - ); -} -export function LogoTwitter() { - return ( - - - - ); -} -export function MailOutline() { - return ( - - - - - ); -} - -export function TypeScriptIcon(props: IconBaseProps) { - return ( - - - - - - - - - - - - - ); -} - -export function DrizzleIcon(props: IconBaseProps) { - return ( - - Drizzle - - - ); -} diff --git a/src/components/icons/simple-icons.tsx b/src/components/icons/simple-icons.tsx index f0cc2e3..e999183 100644 --- a/src/components/icons/simple-icons.tsx +++ b/src/components/icons/simple-icons.tsx @@ -255,6 +255,36 @@ export function Javascript(props: IconBaseProps) { ); } +export function Typescript(props: IconBaseProps) { + return ( + + + + + + + + + + + + + ); +} + export function Git(props: IconBaseProps) { return ( - PostgreSQL - + Drizzle + ); } diff --git a/src/components/layouts/footer.tsx b/src/components/layouts/footer.tsx index a993a01..57cec2e 100644 --- a/src/components/layouts/footer.tsx +++ b/src/components/layouts/footer.tsx @@ -4,9 +4,9 @@ import { MailPlus } from 'lucide-react'; import Link from 'next/link'; import { useFeatureFlagEnabled } from 'posthog-js/react'; import { useRef } from 'react'; -import { SiGithub, SiLinkedin, SiX } from 'react-icons/si'; import { Spotify } from './'; import { Accent } from '../accent'; +import { Github, LinkedIn, X } from '../icons/simple-icons'; import { Tooltip, TooltipContent, @@ -92,7 +92,7 @@ const links = [ { href: 'https://github.com/yogyy', alt: 'Github', - icon: SiGithub, + icon: Github, content: (

See My Project on Github @@ -102,7 +102,7 @@ const links = [ { href: 'https://www.linkedin.com/in/yogyy/', alt: 'LinkedIn', - icon: SiLinkedin, + icon: LinkedIn, content: (

Find me on LinkedIn @@ -112,7 +112,7 @@ const links = [ { href: 'https://twitter.com/yogyyconst', alt: 'Twitter', - icon: SiX, + icon: X, content: (

Reach me on Twitter diff --git a/src/components/layouts/spotify.tsx b/src/components/layouts/spotify.tsx index 5823e49..8afae56 100644 --- a/src/components/layouts/spotify.tsx +++ b/src/components/layouts/spotify.tsx @@ -1,11 +1,10 @@ import Image from 'next/image'; -import { SiSpotify } from 'react-icons/si'; import useSWR from 'swr'; import { cn } from '@/lib/utils'; +import { Spotify as Icon } from '@/components/icons/simple-icons'; import UnstyledLink, { type UnstyledLinkProps } from '@/components/links/unstyledlink'; import { Skeleton } from '../ui/skeleton'; import { SpotifyData, SpotifyLastPlayed } from '@/types/spotify'; - export function Spotify({ className, ...props }: Omit) { const fetcher = (url: string) => fetch(url).then(r => r.json()); const { data, isLoading } = useSWR('/api/spotify/currently-playing', fetcher); @@ -26,7 +25,7 @@ export function Spotify({ className, ...props }: Omit

- +
@@ -68,7 +67,7 @@ export function Spotify({ className, ...props }: Omit
- , - typescript: , - nodejs: , - react: , - nextjs: , - tailwindcss: , - fastify: , - git: , - trpc: , - postgresql: , - drizzleorm: , - graphql: , + javascript: , + typescript: , + nodejs: , + react: , + nextjs: , + tailwindcss: , + fastify: , + git: , + hono: , + postgresql: , + drizzleorm: , + graphql: , }), ); diff --git a/src/components/tech-icons.tsx b/src/components/tech-icons.tsx index e125ec5..016516e 100644 --- a/src/components/tech-icons.tsx +++ b/src/components/tech-icons.tsx @@ -1,16 +1,14 @@ import Link from 'next/link'; import { - SiHeadlessui, - SiMongodb, - SiNextdotjs, - SiNodedotjs, - SiRadixui, - SiReact, - SiReactquery, - SiTailwindcss, - SiTrpc, - SiUpstash, -} from 'react-icons/si'; + Mongodb, + Nextdotjs, + Nodedotjs, + Radixui, + React, + Reactquery, + Tailwindcss, + Upstash, +} from './icons/simple-icons'; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from './ui/tooltip'; export type TechListType = keyof typeof techList; @@ -54,52 +52,42 @@ export default function TechMdx({ techs, size }: TechIconsProps) { const techList = { react: { - icon: SiReact, + icon: React, name: 'React', link: 'https://react.dev/', }, nodejs: { - icon: SiNodedotjs, + icon: Nodedotjs, name: 'Node JS', link: 'https://nodejs.org/en', }, nextjs: { - icon: SiNextdotjs, + icon: Nextdotjs, name: 'Next JS', link: 'https://nextjs.org/', }, tailwindcss: { - icon: SiTailwindcss, + icon: Tailwindcss, name: 'Tailwind CSS', link: 'https://tailwindcss.com/', }, mongodb: { - icon: SiMongodb, + icon: Mongodb, name: 'MongoDB', link: 'https://www.mongodb.com/', }, - headui: { - icon: SiHeadlessui, - name: 'Headless UI', - link: 'https://headlessui.com/', - }, radix: { - icon: SiRadixui, + icon: Radixui, name: 'Radix UI', link: 'https://www.radix-ui.com/', }, reactquery: { - icon: SiReactquery, + icon: Reactquery, name: 'React Query', link: 'https://tanstack.com/', }, - trpc: { - icon: SiTrpc, - name: 'tRPC', - link: 'https://trpc.io/', - }, upstash: { - icon: SiUpstash, + icon: Upstash, name: 'Upstash', link: 'https://upstash.com/', }, diff --git a/src/constants/links.ts b/src/constants/links.ts index 6d9701b..771ee6d 100644 --- a/src/constants/links.ts +++ b/src/constants/links.ts @@ -1,5 +1,5 @@ import { FileUser } from 'lucide-react'; -import { SiGithub, SiX } from 'react-icons/si'; +import { Github, X } from '@/components/icons/simple-icons'; const externalUrl = [ { @@ -9,12 +9,12 @@ const externalUrl = [ }, { href: 'https://github.com/yogyy', - icon: SiGithub, + icon: Github, name: 'Github', }, { href: 'https://twitter.com/yogyyconst', - icon: SiX, + icon: X, name: 'Twitter', }, ]; diff --git a/src/pages/projects/[slug].tsx b/src/pages/projects/[slug].tsx index 1ef7e4b..e39a3d3 100644 --- a/src/pages/projects/[slug].tsx +++ b/src/pages/projects/[slug].tsx @@ -4,8 +4,8 @@ import { Link, UserRound } from 'lucide-react'; import { InferGetStaticPropsType } from 'next'; import { notFound } from 'next/navigation'; import { useEffect, useState } from 'react'; -import { SiGithub } from 'react-icons/si'; import { getTableOfContents, TableOfContents } from '@/lib/toc'; +import { Github } from '@/components/icons/simple-icons'; import CloudinaryImg from '@/components/images/cloudinary-img'; import { RootLayout } from '@/components/layouts'; import CustomLink from '@/components/links/custom-link'; @@ -73,7 +73,7 @@ const ProjectsPage = ({ proj }: InferGetStaticPropsType)
-
- + Repository
- From c9d70134622904491c7bf99f11342940c2e44284 Mon Sep 17 00:00:00 2001 From: yogyy Date: Sun, 17 Nov 2024 15:44:36 +0700 Subject: [PATCH 5/7] chore: add same size icon --- src/components/section/hero.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/section/hero.tsx b/src/components/section/hero.tsx index d6fa13c..39c9de2 100644 --- a/src/components/section/hero.tsx +++ b/src/components/section/hero.tsx @@ -85,7 +85,7 @@ export const HeroSection = () => { )} href={url.href} > - + {url.name} From 48f6e3573c9c76427bc25a75ae7ff597c899667d Mon Sep 17 00:00:00 2001 From: yogyy Date: Sun, 17 Nov 2024 15:44:53 +0700 Subject: [PATCH 6/7] chore: change import icon --- src/components/project-card-simple.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/project-card-simple.tsx b/src/components/project-card-simple.tsx index ea20f3a..32fdcbd 100644 --- a/src/components/project-card-simple.tsx +++ b/src/components/project-card-simple.tsx @@ -1,6 +1,6 @@ import { Globe } from 'lucide-react'; import { ProjectCardSimple as SimpleProject } from '@/constants/simple-project'; -import { LogoGithub } from './icons/icons'; +import { Github } from './icons/simple-icons'; import UnstyledLink from './links/unstyledlink'; const ProjectCardSimple = ({ project }: { project: SimpleProject }) => { @@ -18,7 +18,7 @@ const ProjectCardSimple = ({ project }: { project: SimpleProject }) => { className="group/link rounded-full bg-background outline-none hover:bg-primary/5 focus:bg-primary/5" href={github} > - + ) : null} {url ? ( From 382e05408033089a745e082085bededb12d669c2 Mon Sep 17 00:00:00 2001 From: yogyy Date: Sun, 17 Nov 2024 15:52:51 +0700 Subject: [PATCH 7/7] dependency: remove react-icons, add lucide-react --- next.config.js | 5 ----- package-lock.json | 18 +++++++++--------- package.json | 2 +- vercel.json | 3 ++- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/next.config.js b/next.config.js index ccefbbd..4998ca4 100644 --- a/next.config.js +++ b/next.config.js @@ -4,11 +4,6 @@ const nextConfig = { domains: ['res.cloudinary.com', 'i.scdn.co'], unoptimized: true, }, - modularizeImports: { - 'react-icons': { - transform: 'react-icons/{{member}}', - }, - }, transpilePackages: ['geist'], typescript: { ignoreBuildErrors: true }, diff --git a/package-lock.json b/package-lock.json index 238a777..791d46c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "contentlayer": "^0.3.4", "framer-motion": "^10.18.0", "geist": "^1.2.1", + "lucide-react": "^0.456.0", "mdast-util-toc": "^7.0.0", "next": "^13.4.7", "next-contentlayer": "^0.3.4", @@ -32,7 +33,6 @@ "posthog-node": "^4.0.1", "react": "18.2.0", "react-dom": "18.2.0", - "react-icons": "^4.11.0", "react-intersection-observer": "^9.5.2", "rehype-autolink-headings": "^6.1.1", "rehype-pretty-code": "^0.10.0", @@ -7352,6 +7352,14 @@ "node": ">=10" } }, + "node_modules/lucide-react": { + "version": "0.456.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.456.0.tgz", + "integrity": "sha512-DIIGJqTT5X05sbAsQ+OhA8OtJYyD4NsEMCA/HQW/Y6ToPQ7gwbtujIoeAaup4HpHzV35SQOarKAWH8LYglB6eA==", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, "node_modules/markdown-extensions": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz", @@ -9525,14 +9533,6 @@ "react": "^18.2.0" } }, - "node_modules/react-icons": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.11.0.tgz", - "integrity": "sha512-V+4khzYcE5EBk/BvcuYRq6V/osf11ODUM2J8hg2FDSswRrGvqiYUYPRy4OdrWaQOBj4NcpJfmHZLNaD+VH0TyA==", - "peerDependencies": { - "react": "*" - } - }, "node_modules/react-intersection-observer": { "version": "9.5.2", "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-9.5.2.tgz", diff --git a/package.json b/package.json index 8a85ec2..eb13bd1 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,7 @@ "contentlayer": "^0.3.4", "framer-motion": "^10.18.0", "geist": "^1.2.1", + "lucide-react": "^0.456.0", "mdast-util-toc": "^7.0.0", "next": "^13.4.7", "next-contentlayer": "^0.3.4", @@ -38,7 +39,6 @@ "posthog-node": "^4.0.1", "react": "18.2.0", "react-dom": "18.2.0", - "react-icons": "^4.11.0", "react-intersection-observer": "^9.5.2", "rehype-autolink-headings": "^6.1.1", "rehype-pretty-code": "^0.10.0", diff --git a/vercel.json b/vercel.json index f809786..2855a5c 100644 --- a/vercel.json +++ b/vercel.json @@ -1,7 +1,8 @@ { "git": { "deploymentEnabled": { - "main": true + "main": false, + "icons-package": false } } }