1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,769614,e=>{"use strict";var t=e.i(289978),a=e.i(408317),i=e.i(352387),s=e.i(166712),o=e.i(290551),l=e.i(607873),r=e.i(205132),n=e.i(139368),n=n;function c({project:e,youtubeId:a,primaryLink:i,primaryLinkLabel:s,PrimaryLinkIcon:o,ytRatioStr:l,ytRatioFloat:d,nativeMediaStyle:p,nativeMediaClasses:u,setSelectedMedia:h}){if(a)return(0,t.jsx)("div",{className:"w-full flex justify-center items-center",children:(0,t.jsx)("iframe",{src:`https://www.youtube.com/embed/${a}?autoplay=0&muted=0`,className:"rounded-2xl shadow-2xl border border-white/5",style:{aspectRatio:l,maxWidth:`calc(70vh * ${d})`,maxHeight:"70vh",width:"100%"},allowFullScreen:!0,title:e.title})});if(e.videoUrl&&!a)return(0,t.jsxs)("div",{className:"w-full flex justify-center items-center group relative cursor-pointer",children:[(0,t.jsx)("video",{src:e.videoUrl,className:"rounded-2xl shadow-2xl border border-white/5 object-contain",style:p,controls:!0,autoPlay:!0,muted:!0,loop:!0,playsInline:!0}),(0,t.jsx)("button",{onClick:()=>h({url:e.videoUrl,type:"video"}),className:"absolute top-4 right-4 z-10 p-3 rounded-full bg-black/60 backdrop-blur-md border border-white/10 text-white/70 hover:text-white hover:bg-black/80 transition-all opacity-0 group-hover:opacity-100 shadow-xl",title:"Expand Video",children:(0,t.jsx)(n.default,{className:"w-5 h-5"})})]});let m=(0,r.getThumbnailUrl)(e);return m?(0,t.jsxs)("button",{type:"button",className:"w-full flex justify-center items-center group cursor-pointer relative border-none bg-transparent p-0 outline-none","aria-label":`${e.title} ìì¸ë³´ê¸°`,onClick:()=>{i?window.open(i,"_blank","noopener,noreferrer"):h({url:m,type:"image"})},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),i?window.open(i,"_blank","noopener,noreferrer"):h({url:m,type:"image"}))},children:[(0,t.jsx)("img",{src:m,alt:e.title,className:u,style:p}),i?(0,t.jsx)("div",{className:"absolute inset-0 m-auto flex items-center justify-center rounded-2xl bg-black/40 opacity-0 group-hover:opacity-100 transition-opacity duration-500",style:p,children:(0,t.jsxs)("div",{className:"flex items-center gap-3 px-8 py-4 rounded-full bg-white text-black font-black uppercase tracking-widest hover:scale-105 transition-transform shadow-2xl",children:[s,(0,t.jsx)(o,{className:"w-5 h-5"})]})}):(0,t.jsx)("div",{className:"absolute top-4 right-4 z-10 p-3 rounded-full bg-black/60 backdrop-blur-md border border-white/10 text-white/70 hover:text-white hover:bg-black/80 transition-all opacity-0 group-hover:opacity-100 shadow-xl",children:(0,t.jsx)(n.default,{className:"w-5 h-5"})})]}):null}var d=e.i(780728),p=e.i(349684),p=p,u=e.i(722863),u=u,h=e.i(594986);function m({category:e}){return(0,t.jsx)("nav",{className:"fixed top-0 left-0 w-full z-50 px-6 py-6 pointer-events-none",children:(0,t.jsxs)("div",{className:"container mx-auto flex justify-between items-center pointer-events-auto",children:[(0,t.jsxs)(d.default,{href:`/work?category=${encodeURIComponent(e)}`,className:"flex items-center gap-4 px-6 py-3 rounded-full bg-white/5 backdrop-blur-2xl border border-white/10 text-sm font-black uppercase tracking-[0.2em] text-white/70 hover:text-white hover:bg-white/10 hover:border-white/20 transition-all group shadow-2xl",children:[(0,t.jsx)(p.default,{className:"w-5 h-5 group-hover:-translate-x-2 transition-transform duration-500"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Back to Archive"}),(0,t.jsx)("span",{className:"sm:hidden",children:"Work"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("div",{className:"hidden md:flex px-6 py-3 rounded-full bg-black/40 backdrop-blur-xl border border-white/5 text-[10px] font-black tracking-[0.3em] uppercase text-white/40",children:e}),(0,t.jsx)(h.motion.button,{whileHover:{scale:1.05},whileTap:{scale:.95},onClick:()=>window.scrollTo({top:0,behavior:"smooth"}),className:"w-12 h-12 rounded-full bg-(--accent-primary)/10 backdrop-blur-xl border border-(--accent-primary)/20 flex items-center justify-center text-(--accent-primary) hover:bg-(--accent-primary)/20 transition-all",children:(0,t.jsx)(u.default,{className:"w-5 h-5"})})]})]})})}var g=e.i(222539),f=e.i(919722);function x({title:e,category:a,tags:i,titleStyle:s,animations:o,taxonomyStyles:l,titleFontFamily:r,titleFontSize:n,accentTags:c=!0}){let{transition:d,getFadeInVariants:p}=(0,f.useAnimationEngine)(o),u=(0,g.getElementStyles)(s);return(0,t.jsxs)(h.motion.div,{variants:p("up"),initial:"initial",animate:"animate",transition:d,className:"space-y-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("div",{className:"h-px w-12 bg-(--accent-primary)"}),(0,t.jsx)("span",{className:"text-[10px] tracking-[0.4em] uppercase text-(--accent-primary) font-black",children:a??"PROJECT"})]}),(0,t.jsx)("h1",{className:"font-black uppercase tracking-tighter leading-[0.9] text-white gradient-text pb-4 whitespace-pre-wrap",style:{...u,fontFamily:r??u.fontFamily,fontSize:n??"clamp(2rem, 8vw, 4.5rem)",wordBreak:"break-word",overflowWrap:"anywhere"},children:e}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5 md:gap-3 pt-6",children:i?.map(e=>{let a="next.js"===e.toLowerCase()||"react"===e.toLowerCase()||"ai"===e.toLowerCase(),i=l?.[e];return(0,t.jsx)("span",{className:`px-2.5 py-1 md:px-4 md:py-2 rounded-lg text-[9px] md:text-[10px] uppercase tracking-[0.1em] md:tracking-[0.2em] border transition-all duration-500 2 ${!i&&a&&c?"border-(--accent-primary)/30 bg-(--accent-primary)/10 text-(--accent-primary) shadow-[0_0_20px_rgba(var(--accent-rgb),0.1)] font-black":!i?"border-white/5 bg-white/2 text-white/40 hover:border-white/20 hover:text-white font-black":"font-bold"}`,style:i?{color:i.color,borderColor:i.border?.replace("1px solid ",""),backgroundColor:i.backgroundColor,fontWeight:i.fontWeight}:{},children:e},e)})})]})}function b({fullDescription:e,description:a,approach:i,challenges:s,descriptionStyle:o,approachStyle:l}){let r=(0,g.getElementStyles)(o),n=(0,g.getElementStyles)(l);return(0,t.jsxs)("div",{className:"space-y-12",children:[(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black uppercase tracking-[0.4em] text-(--accent-primary) flex items-center gap-3",children:[(0,t.jsx)("span",{className:"w-2 h-2 rounded-full bg-(--accent-primary)"}),"CONCEPT"]}),(0,t.jsx)("p",{className:"text-2xl md:text-3xl font-black tracking-tight leading-[1.2] text-white whitespace-pre-wrap",style:r,children:e||a})]}),(i||s&&s.length>0)&&(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-12",children:[i&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("h4",{className:"text-[10px] font-black uppercase tracking-[0.5em] text-white/30",children:"PROCESS"}),(0,t.jsx)("p",{className:"text-lg text-zinc-400 font-light leading-relaxed whitespace-pre-wrap",style:n,children:i})]}),s&&s.length>0&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("h4",{className:"text-[10px] font-black uppercase tracking-[0.5em] text-white/30",children:"HIGHLIGHT"}),(0,t.jsx)("div",{className:"flex flex-col gap-4",children:s.map((e,a)=>(0,t.jsxs)("div",{className:"flex gap-4 group",children:[(0,t.jsxs)("span",{className:"text-(--accent-primary) font-black text-xs shrink-0",children:["0",a+1]}),(0,t.jsx)("p",{className:"text-sm text-zinc-500 group-hover:text-zinc-300 transition-colors",children:e})]},e))})]})]})]})}var n=n;function y({title:e,images:a,setSelectedMedia:i}){return a&&0!==a.length?(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-8 pt-20",children:a.map(a=>(0,t.jsxs)("div",{className:"rounded-3xl overflow-hidden border border-white/5 bg-zinc-900 aspect-square group cursor-pointer relative",onClick:()=>i({url:a,type:"image"}),children:[(0,t.jsx)(o.default,{src:a,alt:`${e} detail`,fill:!0,sizes:"(max-width: 768px) 100vw, 50vw",className:"object-cover group-hover:scale-105 transition-transform duration-700"}),(0,t.jsx)("div",{className:"absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-center justify-center",children:(0,t.jsx)(n.default,{className:"w-8 h-8 text-white/50"})})]},a))}):null}var w=e.i(896263);function v({project:e,nextProject:a}){return(0,t.jsx)("div",{className:"sticky top-40 space-y-8",children:(0,t.jsxs)("div",{className:"p-8 rounded-4xl border border-white/5 bg-white/3 backdrop-blur-2xl space-y-10",children:[(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("h4",{className:"text-[10px] font-black uppercase tracking-[0.4em] text-white/20",children:"CONNECT_&_DEPLOY"}),(0,t.jsxs)("div",{className:"space-y-3",children:[e.liveUrl&&(0,t.jsxs)("a",{href:e.liveUrl,target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-between w-full px-6 py-4 rounded-xl bg-white text-black text-[11px] font-black uppercase tracking-widest hover:bg-blue-50 transition-all group",children:["Launch_Live_App",(0,t.jsx)(i.ExternalLink,{className:"w-4 h-4 group-hover:translate-x-1 group-hover:-translate-y-1 transition-transform"})]}),e.githubUrl&&(0,t.jsxs)("a",{href:e.githubUrl,target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-between w-full px-6 py-4 rounded-xl bg-white/5 border border-white/10 text-[11px] font-black uppercase tracking-widest hover:bg-white/10 transition-all group",children:["Source_Repository",(0,t.jsx)(s.Github,{className:"w-4 h-4"})]})]})]}),(0,t.jsxs)("div",{className:"pt-6 border-t border-white/5 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-[10px] uppercase font-black text-white/20 tracking-widest",children:"NEXT_PHASE"}),(0,t.jsx)(d.default,{href:`/work/${a.id}`,className:"text-xl font-black tracking-tighter hover:text-(--accent-primary) transition-colors",children:a.title})]}),(0,t.jsx)(d.default,{href:`/work/${a.id}`,className:"w-12 h-12 rounded-full bg-white/5 border border-white/10 flex items-center justify-center hover:bg-(--accent-primary) transition-all group",children:(0,t.jsx)(w.ChevronRight,{className:"w-6 h-6 group-hover:translate-x-1 transition-transform"})})]})]})})}var j=e.i(136451),C=e.i(732954);function A({selectedMedia:e,setSelectedMedia:a}){return(0,t.jsx)(C.AnimatePresence,{children:e&&(0,t.jsxs)(h.motion.div,{initial:{opacity:0}
2,animate:{opacity:1},exit:{opacity:0},className:"fixed inset-0 z-100 bg-black/95 backdrop-blur-xl flex items-center justify-center p-4 sm:p-8",onClick:()=>a(null),children:[(0,t.jsx)("button",{onClick:()=>a(null),className:"absolute top-6 right-6 z-101 w-12 h-12 rounded-full bg-white/10 border border-white/20 flex items-center justify-center text-white/70 hover:text-white hover:bg-white/20 transition-all backdrop-blur-md",children:(0,t.jsx)(j.X,{className:"w-6 h-6"})}),(0,t.jsx)(h.motion.div,{initial:{scale:.9,opacity:0},animate:{scale:1,opacity:1},exit:{scale:.9,opacity:0},transition:{type:"spring",damping:25,stiffness:300},className:"relative w-full max-w-7xl max-h-[90vh] aspect-video rounded-2xl overflow-hidden shadow-2xl border border-white/10",onClick:e=>e.stopPropagation(),children:"image"===e.type?(0,t.jsx)(o.default,{src:e.url,alt:"Expanded view",fill:!0,className:"object-contain",sizes:"100vw",quality:100}):(0,t.jsx)("video",{src:e.url,className:"w-full h-full object-contain",controls:!0,autoPlay:!0,playsInline:!0})})]})})}var I=e.i(126181),k=e.i(144271);function N({project:e,nextProject:a}){let i=e.tags??[],o=!!e.techWalkthrough&&e.techWalkthrough.steps.length>0,l=e.challenges??[];return(0,t.jsx)("div",{className:"mx-auto max-w-4xl",children:(0,t.jsxs)("div",{className:"relative isolate space-y-10 overflow-hidden rounded-3xl border border-white/15 bg-zinc-900 p-8 text-left md:p-12",children:[(0,t.jsx)(k.default,{className:"pointer-events-none absolute -top-16 -right-16 -z-10 h-72 w-72 rounded-full blur-2xl"}),(0,t.jsxs)("div",{className:"space-y-5",children:[e.githubUrl&&(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsxs)("a",{href:e.githubUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex w-fit shrink-0 items-center gap-2 rounded-full border border-blue-400/40 bg-blue-500/15 px-5 py-2.5 text-[10px] font-black uppercase tracking-widest text-blue-300 transition-all hover:border-blue-400 hover:bg-blue-500 hover:text-white",children:[(0,t.jsx)(s.Github,{className:"h-4 w-4"}),"GitHub",(0,t.jsx)(I.ArrowUpRight,{className:"h-3.5 w-3.5"})]})}),(0,t.jsx)("h1",{className:"text-3xl font-black uppercase tracking-tighter text-white md:text-5xl",children:e.title}),(0,t.jsx)("p",{className:"max-w-2xl whitespace-pre-line text-base leading-relaxed text-white/70 md:text-lg",children:e.description}),i.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:i.map(e=>(0,t.jsx)("span",{className:"rounded-xs border border-white/15 px-2 py-1 font-mono text-[9px] text-white/55",children:e},e))})]}),(0,t.jsxs)("div",{className:"space-y-6 border-t border-white/10 pt-8",children:[(0,t.jsxs)("h3",{className:"flex items-center gap-3 text-[11px] font-black uppercase tracking-[0.4em] text-blue-400",children:[(0,t.jsx)("span",{className:"h-2 w-2 rounded-full bg-blue-400"}),"README"]}),(0,t.jsx)("p",{className:"whitespace-pre-wrap text-base font-bold leading-[1.3] tracking-tight text-white md:text-xl",children:e.fullDescription||e.description})]}),l.length>0&&(0,t.jsxs)("div",{className:"space-y-4 border-t border-white/10 pt-8",children:[(0,t.jsxs)("h4",{className:"flex items-center gap-3 text-[11px] font-black uppercase tracking-[0.4em] text-blue-400",children:[(0,t.jsx)("span",{className:"h-2 w-2 rounded-full bg-blue-400"}),"HIGHLIGHTS"]}),(0,t.jsx)("ul",{className:"grid grid-cols-1 gap-3 md:grid-cols-2",children:l.map((e,a)=>(0,t.jsxs)("li",{className:"flex gap-3 text-sm leading-relaxed text-zinc-300",children:[(0,t.jsx)("span",{className:"inline-flex h-fit shrink-0 items-center rounded-md bg-white/5 px-1.5 py-0.5 font-mono text-xs text-white",children:String(a+1).padStart(2,"0")}),e]},e))})]}),o&&(0,t.jsxs)("div",{className:"space-y-4 border-t border-white/10 pt-8",children:[(0,t.jsxs)("h4",{className:"flex items-center gap-3 text-[11px] font-black uppercase tracking-[0.4em] text-blue-400",children:[(0,t.jsx)("span",{className:"h-2 w-2 rounded-full bg-blue-400"}),"HOW IT WORKS"]}),e.techWalkthrough.description&&(0,t.jsx)("p",{className:"text-sm leading-relaxed text-zinc-400",children:e.techWalkthrough.description}),(0,t.jsx)("ol",{className:"space-y-2",children:e.techWalkthrough.steps.map((e,a)=>(0,t.jsxs)("li",{className:"flex gap-4 text-sm leading-relaxed text-zinc-300",children:[(0,t.jsx)("span",{className:"inline-flex h-fit shrink-0 items-center rounded-md bg-white/5 px-1.5 py-0.5 font-mono text-xs text-white",children:String(a+1).padStart(2,"0")}),e]},e))})]}),(0,t.jsx)("div",{className:"flex items-center justify-end border-t border-white/10 pt-8",children:(0,t.jsxs)(d.default,{href:`/work/${a.id}`,className:"group inline-flex items-center gap-3 text-sm font-bold text-white/60 transition-colors hover:text-white",children:[a.title,(0,t.jsx)("span",{className:"flex h-8 w-8 items-center justify-center rounded-full border border-white/10 bg-white/5 transition-all group-hover:bg-blue-500",children:(0,t.jsx)(w.ChevronRight,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})})]})})]})})}var S=e.i(608586),D=e.i(532325);function U({project:e,settings:a}){let s=e.images&&e.images.length>0?e.images:e.thumbnail?[e.thumbnail]:[],{active:l,setActive:r,containerRef:n}=(0,D.useImageCarousel)(s.length);return(0,t.jsxs)("div",{className:"max-w-4xl mx-auto text-left",children:[(0,t.jsx)(x,{title:e.title,category:e.category,tags:e.tags,titleStyle:e.titleStyle,animations:a?.appearance?.animations,taxonomyStyles:{},titleFontFamily:"'Pretendard', sans-serif",titleFontSize:"clamp(1.75rem, 6.5vw, 3.5rem)",accentTags:!1}),s[0]&&(0,t.jsxs)("div",{className:"mt-8 space-y-3",children:[(0,t.jsxs)("div",{ref:n,className:"group relative w-full overflow-hidden rounded-2xl border border-white/10 bg-zinc-900 shadow-2xl",children:[(0,t.jsx)("a",{href:e.liveUrl,target:"_blank",rel:"noopener noreferrer",className:"block w-full",children:(0,t.jsx)("div",{className:"relative w-full aspect-video overflow-hidden bg-zinc-950",children:s.map((a,i)=>(0,t.jsx)(o.default,{src:a,alt:e.title,fill:!0,sizes:"(max-width: 1024px) 100vw, 900px",priority:0===i,className:"object-cover transition-opacity duration-700 group-hover:scale-[1.02]",style:{opacity:+(i===l)}},a))})}),s.length>1&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{type:"button","aria-label":"ì´ì íë©´",onClick:e=>{e.preventDefault(),e.stopPropagation(),r(e=>(e-1+s.length)%s.length)},className:"absolute inset-y-0 left-0 z-30 flex w-1/5 items-center justify-start pl-3 opacity-0 transition-opacity duration-300 hover:opacity-100 focus-visible:opacity-100 active:opacity-100",children:(0,t.jsx)("span",{className:"rounded-full bg-black/50 p-1.5 backdrop-blur-sm",children:(0,t.jsx)(S.ChevronLeft,{className:"h-5 w-5 text-white"})})}),(0,t.jsx)("button",{type:"button","aria-label":"ë¤ì íë©´",onClick:e=>{e.preventDefault(),e.stopPropagation(),r(e=>(e+1)%s.length)},className:"absolute inset-y-0 right-0 z-30 flex w-1/5 items-center justify-end pr-3 opacity-0 transition-opacity duration-300 hover:opacity-100 focus-visible:opacity-100 active:opacity-100",children:(0,t.jsx)("span",{className:"rounded-full bg-black/50 p-1.5 backdrop-blur-sm",children:(0,t.jsx)(w.ChevronRight,{className:"h-5 w-5 text-white"})})}),(0,t.jsx)("div",{className:"absolute top-4 right-4 z-40 flex gap-1.5 rounded-full bg-black/40 px-2.5 py-2 backdrop-blur-sm",children:s.map((e,a)=>(0,t.jsx)("button",{type:"button","aria-label":`${a+1}ë²ì§¸ íë©´ 보기`,onClick:e=>{e.preventDefault(),e.stopPropagation(),r(a)},style:{minHeight:0,minWidth:0},className:`h-2.5 w-2.5 rounded-full transition-colors duration-300 focus-visible:outline focus-visible:outline-2 focus-visible:outline-white ${a===l?"bg-blue-400":"bg-white/30 hover:bg-white/60"}`},e))})]}),e.liveUrl&&(0,t.jsxs)("a",{href:e.liveUrl,target:"_blank",rel:"noopener noreferrer",style:{minHeight:0,minWidth:0},className:"absolute bottom-5 right-5 z-40 inline-flex items-center gap-1.5 rounded-full border border-white/15 bg-black/45 backdrop-blur-xl px-3 py-1.5 text-[9px] font-black uppercase tracking-widest text-white transition-all hover:bg-white hover:text-black",children:["Live",(0,t.jsx)(i.ExternalLink,{className:"h-3 w-3"})]})]}),e.liveUrl&&(0,t.jsxs)("p",{className:"flex items-center gap-1.5 text-[12px] text-white/55",children:[(0,t.jsx)(i.ExternalLink,{className:"h-3.5 w-3.5 shrink-0"}),"ê°ì´ë°ë¥¼ ë르면 ì¤ì ì¬ì´í¸ë¡ ì´ëí©ëë¤"]})]}),(0,t.jsx)("div",{className:"mt-16",children:(0,t.jsx)(b,{fullDescription:e.fullDescription??"",description:e.description,approach:e.approach??"",challenges:e.challenges??[],descriptionStyle:e.descriptionStyle,approachStyle:e.approachStyle})})]})}function E(){return(0,t.jsxs)("div",{className:"min-h-screen bg-black flex flex-col items-center justify-center space-y-8",children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("div",{className:"absolute inset-0 blur-2xl bg-blue-500/20 animate-pulse"}),(0,t.jsx)("h1",{className:"text-4xl font-black text-white relative",children:"PROJECT_NOT_FOUND"})]}),(0,t.jsx)(d.default,{href:"/work",className:"text-(--accent-primary) hover:underline uppercase tracking-widest text-xs font-bold",children:"Return to Archive"})]})}e.s(["default",0,function({params:e}){let{id:n}=(0,a.use)(e),d=l.default,p=d.find(e=>e.id===n),[u,h]=(0,a.useState)(null),[g,f]=(0,a.useState)(null),[w,j]=(0,a.useState)({});if((0,a.useEffect)(()=>{(async()=>{try{let[e,t]=await Promise.all([fetch(`/api/admin/update?type=sett
2ings&t=${Date.now()}`,{cache:"no-store"}),fetch(`/api/admin/update?type=site-config&t=${Date.now()}`,{cache:"no-store"})]),a=await e.json(),i=await t.json();a.success&&f(a.data),i.success&&i.data?.taxonomyStyles&&j(i.data.taxonomyStyles)}catch(e){console.error("Failed to fetch data:",e)}})()},[]),a.default.useEffect(()=>{u?document.body.style.overflow="hidden":document.body.style.overflow="unset"},[u]),!p)return(0,t.jsx)(E,{});let C=d.findIndex(e=>e.id===n),I=d[(C+1)%d.length],k=(0,r.getYoutubeId)(p.videoUrl)||(0,r.getYoutubeId)(p.liveUrl),S=p.liveUrl||p.githubUrl,D=p.liveUrl?"Launch Live App":"View Source (GitHub)",R=p.liveUrl?i.ExternalLink:s.Github,L=p.videoUrl||p.liveUrl||"",P=(0,r.isYoutubeShorts)(L),z=!k&&!p.videoUrl&&!p.thumbnail&&Array.isArray(p.images)&&p.images.length>0?p.images.slice(1):p.images,F=e=>{let t=e.split("/");return 2===t.length?Number(t[0])/Number(t[1]):16/9},W=p.aspectRatio&&"auto"!==p.aspectRatio,G=W?p.aspectRatio:"16/9",M="16/9";W?M=G:P&&(M="9/16");let T=F(M),H=W?{aspectRatio:G,width:"100%",maxWidth:`calc(65vh * ${F(G)})`,maxHeight:"65vh"}:{width:"auto",height:"auto",maxHeight:"65vh"};return(0,t.jsxs)("main",{className:"min-h-screen bg-black text-white selection:bg-blue-500/30",children:[(0,t.jsxs)("div",{className:"fixed inset-0 z-0 pointer-events-none opacity-20",children:[(()=>{if("Vibe Coding"===p.category&&!p.thumbnail&&!p.videoUrl&&!(p.images&&p.images.length>0)&&!k)return(0,t.jsx)("div",{className:"w-full h-full bg-linear-to-br from-neutral-900 via-black to-neutral-900"});if(p.videoUrl&&!k)return(0,t.jsx)("video",{src:p.videoUrl,className:"w-full h-full object-cover blur-[100px]",autoPlay:!0,muted:!0,loop:!0,playsInline:!0});let e="/images/placeholder.jpg";if(p.thumbnail){let t=(0,r.getYoutubeId)(p.thumbnail);e=t?(0,r.getYoutubeThumbnail)(t)||e:p.thumbnail}else p.images&&p.images.length>0?e=p.images[0]:k&&(e=(0,r.getYoutubeThumbnail)(k)||e);return(0,t.jsx)(o.default,{src:e,alt:"",fill:!0,sizes:"100vw",className:"object-cover blur-[100px]"})})(),(0,t.jsx)("div",{className:"absolute inset-0 bg-black/40"})]}),(0,t.jsx)(m,{category:p.category}),(0,t.jsx)("section",{className:"relative pt-32 md:pt-48 pb-20 px-4 md:px-8 z-10",children:(0,t.jsx)("div",{className:"container mx-auto",children:"Vibe Coding"===p.category?(0,t.jsx)(N,{project:p,nextProject:I}):"Web Site"===p.category?(0,t.jsx)(U,{project:p,nextProject:I,settings:g,taxonomyStyles:w,setSelectedMedia:h}):(0,t.jsxs)("div",{className:"max-w-5xl mx-auto space-y-12",children:[(0,t.jsx)(x,{title:p.title,category:p.category,tags:p.tags,titleStyle:p.titleStyle,animations:g?.appearance?.animations,taxonomyStyles:w}),(0,t.jsx)("div",{className:"relative w-full flex justify-center items-center",children:(0,t.jsx)(c,{project:p,youtubeId:k,primaryLink:S,primaryLinkLabel:D,PrimaryLinkIcon:R,ytRatioStr:M,ytRatioFloat:T,nativeMediaStyle:H,nativeMediaClasses:"max-w-full rounded-2xl shadow-2xl border border-white/10 object-contain transition-transform duration-500 group-hover:scale-[1.02] bg-zinc-900",setSelectedMedia:h})}),(0,t.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-12 gap-16 pt-12",children:[(0,t.jsxs)("div",{className:"lg:col-span-8 space-y-20",children:[(0,t.jsx)(b,{fullDescription:p.fullDescription,description:p.description,approach:p.approach,challenges:p.challenges,descriptionStyle:p.descriptionStyle,approachStyle:p.approachStyle}),(0,t.jsx)(y,{title:p.title,images:z,setSelectedMedia:h})]}),(0,t.jsx)("div",{className:"lg:col-span-4",children:(0,t.jsx)(v,{project:p,nextProject:I})})]})]})})}),(0,t.jsx)(A,{selectedMedia:u,setSelectedMedia:h})]})}],769614)},607873,(e,t,a)=>{t.exports=JSON.parse('[{"id":"cafe-oneulharu-demo","title":"ì¹´í ì¤ëí루","category":"Web Site","thumbnail":"/images/projects/cafe-oneulharu-pc-01-home-20260904.webp","description":"ìí¤ íë í¸ì ì¤ì¬ ì´ë¯¸ì§ë¡ ì¹´í ë¶ì기를 ë´ì ë°ìí ìíì´ì§ì
ëë¤.","cardDescription":"ì¤ì ë°°í¬ê¹ì§ ë§ì¹ ì¹´í ë¸ëë ìíì´ì§ ì¹ì¬ì´í¸","tags":["Next.js","Tailwind CSS","Vercel"],"images":["/images/projects/cafe-oneulharu-pc-01-home-20260904.webp","/images/projects/cafe-oneulharu-pc-02-menu-20260904.webp","/images/projects/cafe-oneulharu-pc-03-about-20260905-b69da8.webp","/images/projects/cafe-oneulharu-pc-04-location-20260905-0f7a20.webp"],"mobileImages":["/images/projects/cafe-oneulharu-mobile-hero.webp","/images/projects/cafe-oneulharu-mobile-menu.webp"],"liveUrl":"https://cafe-oneulharu-demo.vercel.app","screenshotPages":["/","/menu","/about","/location"],"aspectRatio":"16/9","approach":"ìê°Â·ë©ë´Â·ìì
ìê°ì´ íëì ì¤í¬ë¡¤ íë¦ì¼ë¡ ìì°ì¤ë½ê² ì´ì´ì§ëë¡ ì¤ê³íìµëë¤. 기íë¶í° ì¤ì ë°°í¬ê¹ì§ ìë¹ì¤ ì¤í ìì¤ì¼ë¡ ì ìí©ëë¤.","challenges":["ë°ìí ë ì´ììì¼ë¡ PC·모ë°ì¼ 모ë ëì¼í ìì±ëë¡ êµ¬í","ì¤ì¬ ì´ë¯¸ì§ì ìí¤ ì»¬ë¬ë¡ ë§¤ì¥ ë¶ì기를 ê·¸ëë¡ ì ë¬","ì ìë¶í° ì¤ì ë°°í¬ê¹ì§ ìì¤í±ì¼ë¡ ìê²°"]},{"id":"cass-beer-ai-ad","title":"CASS AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":true,"thumbnail":"https://img.youtube.com/vi/LEfLc6z26Oc/maxresdefault.jpg","description":"ì¹´ì¤(Cass) 맥주 AI ê´ê³ ìì (17ì´)","fullDescription":"ì¹´ì¤ì ì²ëí¨ì AIë¡ íì´ë¸ 맥주 ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/LEfLc6z26Oc","challenges":["ê±°í ì§ê°ì AIë¡ ì¤ëë ¥ ìê² ííí기","17ì´ ìì ë¸ëë ìëì§ ì ë¬","ì²ë ì»¬ë¬ í¤ ì¼ê´ì± ì ì§"],"approach":"ì²ëí ê±°íê³¼ 컬ë¬ê°ì ì§ì¤í í롬íí¸ë¡ ë¹ ë¥¸ 리ë¬ì 맥주 ê´ê³ ìì±.","images":[],"chosen":false,"selected":false},{"id":"fila-pantera-ai-ad","title":"PANTERA AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":true,"thumbnail":"https://img.youtube.com/vi/GMl1eoqvstE/maxresdefault.jpg","description":"FILA íí
ë¼ ì¤ëì»¤ì¦ ì»¬ë ì
AI ê´ê³ ìì","fullDescription":"FILA íí
ë¼ì ì¤í¸ë¦¿ ê°ì±ì AIë¡ ë´ì ì¤ëì»¤ì¦ ê´ê³ .","tags":["comfyui","midjourney","kling ai","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/GMl1eoqvstE","challenges":["ì ë° ìì¬ ëí
ì¼ì AIë¡ ì ë°íê² ííí기","ì¤í¬ì¸ ë¸ëë í¹ì ì ìëê°","FILA ë¸ëë ì»¬ë¬ ìì´ë´í°í° ì ì§"],"approach":"ì¤ëì»¤ì¦ ëí
ì¼ì ë í¼ë°ì¤ ì´ë¯¸ì§ë¡ ì¡ê³ ì¤í¸ë¦¿ ê°ì±ì ìµê¸ë¡ ìì ì°ê²°.","images":[],"chosen":false,"selected":false},{"id":"missha-dare-tint-ai-ad","title":"MISSHA AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":true,"thumbnail":"https://img.youtube.com/vi/kuDxUp-R2-8/maxresdefault.jpg","description":"MISSHA ë°ì´í´í¸ ë©í° 벨벳 립 ì í AI ê´ê³ ìì","fullDescription":"벨벳 립ì ì§ê°ê³¼ ìê°ì AI ë¹ì£¼ì¼ë¡ ì´ë¦° ë·°í° ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/kuDxUp-R2-8","challenges":["립 ì íì 벨벳 ì§ê° AIë¡ ì¬í","ë·°í° ê´ê³ í¹ì ì ê°ì± ë¶ì기","ì§§ì í¬ë§·ìì ì í ë§¤ë ¥ ê·¹ëí"],"approach":"벨벳 립 ìê°ê³¼ ì§ê°ì ë·°í° í¹í í롬íí¸ë¡ ì ë°íê² ì¡ìë¸ ê´ê³ .","images":[],"chosen":false,"selected":false},{"id":"kanu-hanok-ai-ad","title":"KANU AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/c7zIMhZXjxA/maxresdefault.jpg","description":"ì íµ íì¥ ë°°ê²½ì ì¹´ë ì¤íë§ë¸ë ë ìë©ë¦¬ì¹´ë
¸ AI ê´ê³ ","fullDescription":"íì¥ê³¼ ìë©ë¦¬ì¹´ë
¸, ì´ì¸ë¦´ ê² ê°ì§ ìì ì¡°í©ì AIë¡ ë§ì¶°ë³¸ ë´ ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/c7zIMhZXjxA","challenges":["íì¥ ê±´ì¶ ëí
ì¼ AIë¡ ííí기","커í¼ì ì íµ ê³µê°ì ì´ìí¨ ìì 기","ë´ ê°ì± ì»¬ë¬ í¤ ì¼ê´ì±"],"approach":"íì¥ ë°°ê²½ê³¼ ì í í롬íí¸ë¥¼ ë°ë¡ ì¡ì ë´ ê°ì±ì¼ë¡ ìì°ì¤ë½ê² ì°ê²°.","images":[],"chosen":false,"selected":false},{"id":"dior-fashion-ai-ad","title":"Dior í¨ì
AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/SEwZ8FFnvN4/maxresdefault.jpg","description":"Stable Diffusion + Midjourneyë¡ ì ìí ëì¬ AI í¨ì
ê´ê³ ","fullDescription":"AIë¡ ì¬í´ìí Diorì ì°ìí í¨ì
무ë.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/SEwZ8FFnvN4","challenges":["íì´í¨ì
ììì ì¬ì¸í ìì¬ê° íí","ëì¬ í¹ì ì ì°ìí 무ë ì¬í","ëª
í ê´ê³ ì¡°ëª
·구ë 구í"],"approach":"ëì¬ ë°ì¨ì´ ë í¼ë°ì¤ë¥¼ ë¶ìí´ ìì ì¤ë£¨ì£ê³¼ ê³ ê¸ ì¡°ëª
ê°ì í롬íí¸ì ë°ì.","
2images":[],"chosen":false,"selected":false},{"id":"adidas-superstar-ai-ad","title":"Superstar AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/Ffyt7vgB6vA/maxresdefault.jpg","description":"ìëë¤ì¤ ìí¼ì¤í ì ë° AI ê´ê³ ìì","fullDescription":"í´ëì ì¤ëì»¤ì¦ ìí¼ì¤í를 AIë¡ ë¤ì 무ë ìì ì¬ë¦° ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/Ffyt7vgB6vA","challenges":["ìí¼ì¤í ìì´ì½ë ëìì¸ ëí
ì¼ ì¬í","ì¤í¸ë¦¿ ê°ì±ì ìëì§ íí","í´ëìê³¼ íë 무ë ëìì ë´ê¸°"],"approach":"ìí ëí
ì¼ê³¼ ì¤í¸ë¼ì´í를 ë í¼ë°ì¤ë¡ ì¡ê³ ì¤í¸ë¦¿ 무ë ìµê¸ë¡ ìì ìì±.","images":[],"chosen":false,"selected":false},{"id":"genesis-car-ai-ad","title":"Genesis AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/K1e8d_cbwMA/maxresdefault.jpg","description":"íë Genesis(ì ë¤ìì¤) ìëì°¨ AI ê´ê³ ìì","fullDescription":"ì ë¤ìì¤ì í리미ì ê°ì±ì AI ììì¼ë¡ ì¡ìë¸ ìëì°¨ ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/K1e8d_cbwMA","challenges":["ìëì°¨ ê¸ì ì§ê°ê³¼ 곡ì AIë¡ ííí기","í리미ì ë¸ëë 무ë ì¼ê´ì±","ì¼ê° ëë¼ì´ë¸ ëë ììì¼ë¡ 구í"],"approach":"ì ë¤ìì¤ì 곡ì ëìì¸ê³¼ ì¼ê° í리미ì ì¡°ëª
ì ì¤ì¬ì¼ë¡ ìì 무ë ìì±.","images":[],"chosen":false,"selected":false},{"id":"elle-cover-ai-model-v1","title":"ELLE AI ëª¨ë¸ vol.1","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/XzQ1aMpTweI/maxresdefault.jpg","description":"AI ì¬ì 모ë¸ì´ ELLE ë§¤ê±°ì§ ì»¤ë²ë¥¼ ì°¨ì§íë¤","fullDescription":"AI 모ë¸ë¡ ë§ë 첫 ë²ì§¸ ELLE ì»¤ë² ì»¨ì
.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/XzQ1aMpTweI","challenges":["AI ëª¨ë¸ ì¼êµ´ ì¼ê´ì± ì ì§","í¸ì§ í¨ì
ì¤íì¼ ì¡°ëª
·구ë","ì¡ì§ ì»¤ë² ìì¤ì ëí
ì¼ ìì±ë"],"approach":"ì¡ì§ ì»¤ë² ë ì´ììì ë í¼ë°ì¤ë¡ AI 모ë¸ì í¬ì¦ì ì¡°ëª
ì í¸ì§ í¨ì
ì¤íì¼ë¡ ì¡°ì¨.","images":[],"chosen":false,"selected":false},{"id":"elle-cover-ai-model-v2","title":"ELLE AI ëª¨ë¸ vol.2","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/bJzYsTFAMSk/maxresdefault.jpg","description":"AI 모ë¸ì´ ELLE ë§¤ê±°ì§ ì»¤ë² ëª¨ë¸ì´ ëë¤ (Stable Diffusion + ComfyUI)","fullDescription":"ëí
ì¼ì ë ë¤ë¬ì ë ë²ì§¸ AI ELLE ì»¤ë² ì»¨ì
.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/bJzYsTFAMSk","challenges":["vol.1 ëë¹ ì¸ë¶ ë¬ì¬ ê°ì ","ì»¬ë¬ ê·¸ë ì´ë© ì¼ê´ì±","í¨ì
무ë ìì±ë ëì´ì¬ë¦¬ê¸°"],"approach":"vol.1 í¼ëë°±ì ë°ìí´ ëª¨ë¸ ëí
ì¼ê³¼ ë°°ê²½ ìì±ë를 í ë¨ê³ ë ë¤ë¬ì ë²ì .","images":[],"chosen":false,"selected":false},{"id":"ai-fashion-change","title":"í¨ì
ì²´ì¸ì§ AI ìì","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/iN3TUWYflGc/maxresdefault.jpg","description":"AIë¡ ê°ì í¬ì¦ë¥¼ ì ì§íë©´ì í¨ì
ì²´ì¸ì§","fullDescription":"ê°ì í¬ì¦ë¥¼ ì ì§íë©° AIë¡ í¨ì
ì ì ííë ì¤íì ìì.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/iN3TUWYflGc","challenges":["í¬ì¦ ì ì§íë©´ì ììë§ ì íí기","ì í ì¥ë©´ì ìì°ì¤ë¬ì´ íë¦","ë¤ìí ì¤íì¼ì ì§§ì í´ë¦½ì ë´ê¸°"],"approach":"ê°ì í¬ì¦ë¥¼ ì ì§íë©´ì ììë§ ì íëë íë¦ì AI ììì¼ë¡ ìì°ì¤ë½ê² ì´ì´ ë¶ìë¤.","images":[],"chosen":false,"selected":false},{"id":"seoul-vlog-ai","title":"AI ìì¸ íë°© ë¸ì´ë¡ê·¸","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/qGVERP79EgM/maxresdefault.jpg","description":"AIë¡ ì ìí ìì¸ íë°© ë¸ì´ë¡ê·¸ ìì","fullDescription":"ì¹´ë©ë¼ ìì´ AIë¡ë§ ìì¸ ê³³ê³³ì ë´ì ëì ë¸ì´ë¡ê·¸.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/qGVERP79EgM","challenges":["ìì¸ ì¤ì ì¥ìì ì¬ì¤ê° ìë ì¬í","ë¸ì´ë¡ê·¸ í¹ì ì ìì°ì¤ë¬ì´ íë¦","ë¤ìí ì¥ì를 ì¼ê´ë í¤ì¼ë¡ ì°ê²°í기"],"approach":"ìì¸ ê° ì§ìì ëëë§í¬ì ë¶ì기를 AI ì´ë¯¸ì§ë¡ ìì±í´ ë¸ì´ë¡ê·¸ íìì¼ë¡ í¸ì§.","images":[],"chosen":false,"selected":false}
2,{"id":"cherry-blossom-ai-girl","title":"AI ë²ê½ ì¶ì ìë
","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/ScNcbp_mxBc/maxresdefault.jpg","description":"AIë¡ ë§ë ë²ê½ ì¶ì ê°ì± ìì","fullDescription":"ë´ ë²ê½ê³¼ AI ìºë¦í°, ê³ì ê°ì±ì ë´ì ì§§ì ìì.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/ScNcbp_mxBc","challenges":["ë²ê½ ê½ìì ìì°ì¤ë¬ì´ ìì§ì íí","ìºë¦í°ì ë°°ê²½ì ì´ì¸ë¦¼","ë´ ê°ì± ì»¬ë¬ í¤ íí"],"approach":"ë´ ë²ê½ 배경과 AI ìºë¦í°ë¥¼ ê³ì ê°ì±ì ë§ê² ì¡°ì¨í´ ì§§ì ìì í í¸ì¼ë¡ ìì±.","images":[],"chosen":false,"selected":false},{"id":"cocacola-ai-ad","title":"ì½ì¹´ì½ë¼ AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/YF48kwwAOXU/maxresdefault.jpg","description":"AIë¡ ë§ë ì½ì¹´ì½ë¼ ê¸ë¡ë² ë¸ëë ê´ê³ ìì","fullDescription":"ë ë ì»¬ë¬ íëë¡ ì¹ë¶í ì½ì¹´ì½ë¼ AI ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/YF48kwwAOXU","challenges":["ì½ì¹´ì½ë¼ ë ëì ê°ë ¬í¨ì AIë¡ ííí기","ê¸ë¡ë² ë¸ëë í¹ì ì í
2í ìëì§ ì¬í","Shorts í¬ë§·ìì ë¸ëë ìí©í¸ ê·¹ëí"],"approach":"ì½ì¹´ì½ë¼ ë ë íëë¡ ìëíë ë°©ìì¼ë¡ ì¡ê³ ì íê³¼ ì»¬ë¬ ìëì§ ì¤ì¬ì¼ë¡ 구ì±.","images":[],"chosen":false,"selected":false},{"id":"gucci-perfume-ai-ad","title":"GUCCI í¥ì AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/wqWERlr3Km4/maxresdefault.jpg","description":"GUCCI í¥ì ëì
리 ë¸ëë AI ê´ê³ ìì","fullDescription":"GUCCI í¥ìì ìë°©ê°ë¥´ëí ê°ì±ì AIë¡ ë´ì ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/wqWERlr3Km4","challenges":["í¥ìì í¬ëª
í¨ê³¼ ì§ê° AIë¡ ííí기","êµ¬ì° í¹ì ì ìë°©ê°ë¥´ë 무ë ì¬í","ëì
리 ê´ê³ ì 몽íì ë¶ì기 구í"],"approach":"구ì°ì ìë°©ê°ë¥´ë ë í¼ë°ì¤ë¥¼ ë¶ìí´ ëª½íì ì´ê³ ê³ ê¸ì¤ë¬ì´ í¥ì ê´ê³ ë¹ì£¼ì¼ ìì±.","images":[],"chosen":false,"selected":false},{"id":"cj-logistics-ai-ad","title":"CJ ëííµì´ AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/R-nVGAdK_g8/maxresdefault.jpg","description":"AIë¡ ì ìí CJ ëííµì´(O-NE) íë°° ë¸ëë ê´ê³ ìì","fullDescription":"ì¤ì¬ ê´ê³ ìì¤ì¼ë¡ ìì±í CJ ëííµì´ AI ë¸ëë ìì.","tags":["midjourney","kling ai","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/R-nVGAdK_g8","challenges":["íë°° ìë¹ì¤ í¹ì±ì ìê°ì ì¼ë¡ ííí기","CJ ë¸ëë ìì´ë´í°í° ì¼ê´ì±","Shorts í¬ë§·ìì ìí©í¸ ìë ì ë¬"],"approach":"CJ ë¸ëë 컬ë¬ì ë¬¼ë¥ í¹ì±ì í¤ìëë¡ ì¡ì ì¤ì¬ ê´ê³ ëëì ìì ìì±.","images":[],"chosen":false,"selected":false},{"id":"quiznos-contest-2025","title":"í´ì¦ë
¸ì¤ 공모ì ì모ì","category":"Contest","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/0LHTdWy6JRI/maxresdefault.jpg","description":"2025 ì 2í í´ì¦ë
¸ì¤ ìì ì½í
ì¤í¸ ì모 AI ìí","fullDescription":"2025 í´ì¦ë
¸ì¤ ìì 공모ì ì AI ê´ê³ ë¡ ì¹ë¶í ì모ì.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/0LHTdWy6JRI","challenges":["공모ì 기ì¤ì ë§ë ìì±ë íë³´","í´ì¦ë
¸ì¤ ë¸ëë를 AIë¡ ë§¤ë ¥ì ì¼ë¡ ííí기","Shorts í¬ë§·ìì ê°ë ¬í ì¸ì ë¨ê¸°ê¸°"],"approach":"공모ì ì¬ì¬ 기ì¤ì 먼ì ë¶ìíê³ í´ì¦ë
¸ì¤ ë¸ëë를 AI ê´ê³ ë¡ ííí´ ì¶í.","images":[],"chosen":false,"selected":false},{"id":"celine-bag-ai-ad","title":"CELINE AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/rCEeizmVjxQ/maxresdefault.jpg","description":"AIë¡ ë§ë ì
린ë(Celine) ëì
리 ê°ë°© ê´ê³ ìì","fullDescription":"ì
린ëì 미ëë©í ê°ì±ì AIë¡ íì´ë¸ ëì
리 ê°ë°© ê´ê³ .","tags":["stable diffusion","comfyui","flux","midjourney","kling ai","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/rCEeizmVjxQ","challenges":["ê°ì£½ ìì¬ì ëí
ì¼ê³¼ ì§ê° AIë¡ ì¬í","ì
린ë 미ëë© ë¸ëë ê°ì± íí","ëì
리 ê´ê³ í¹ì ì ì ì ë 무ë ì ì§"],"approach":"ì
린ëì 미ëë©í ê°ì±ì Fluxì Midjourney를 ì¡°í©í´ ëì
리 ê°ë°© ê´ê³ ë¡ ìì±.","images":[],"chosen":false,"selected":false},{"id":"weekly24-challenge","title":"ad1day ì±ë¦°ì§","category":"Contest","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/4vcYj0VBZzo/maxresdefault.jpg","description":"ad1day weekly24(ìí´ë¦¬24) ì±ë¦°ì§ ì모 AI ìì ìí","fullDescription":"ad1day weekly24 ì±ë¦°ì§ì 매주 ìì±í´ ì모í AI ìì.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/4vcYj0VBZzo","challenges":["매주 ë§ê°ì ë§ì¶ ë¹ ë¥¸ ì ì ìë","ë¤ìí ë¸ëëì ë§ê²
2 ì¤íì¼ ì íí기","ì§§ì ìê° ìì ê´ê³ ìì±ë ì ì§"],"approach":"매주 주ì´ì§ ë¸ëë 주ì ì ë§ì¶° AI ê´ê³ 를 ë¹ ë¥´ê² ì ìí´ ì±ë¦°ì§ì ì모.","images":[],"chosen":false,"selected":false},{"id":"baskinrobbins-ai-ad","title":"ë² ì¤í¨ë¼ë¹ì¤ AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/7E4i-Nbt-5A/maxresdefault.jpg","description":"Stable Diffusionì¼ë¡ ì ìí ë² ì¤í¨ë¼ë¹ì¤ AI ê´ê³ ìì","fullDescription":"ë¬ì½¤íê³ íì¬í ìê°ì¼ë¡ ë§ë ë² ì¤í¨ë¼ë¹ì¤ AI ê´ê³ .","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/7E4i-Nbt-5A","challenges":["ìì´ì¤í¬ë¦¼ ì§ê°ê³¼ ìê° AIë¡ ííí기","ë² ì¤í¨ë¼ë¹ì¤ í¹ì ì ë°ê³ íì¬í ë¶ì기 ì¬í","ì í ë§¤ë ¥ì Shortsìì ê·¹ëíí기"],"approach":"ìì´ì¤í¬ë¦¼ í¹ì ì ë¬ì½¤íê³ íì¬í 컬ë¬ê°ì ì¤ì¬ì¼ë¡ ì í ê´ê³ ìì±.","images":[],"chosen":false,"selected":false},{"id":"drdre-headset-ai-ad","title":"ë¥í°ëë AI ìì","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/XqUuEwNbz94/maxresdefault.jpg","description":"AIë¡ ë§ë íë ¤í 컨ì
ì ë¥í°ëë í¤ëì
ê´ê³ ìì","fullDescription":"ìì
ê³¼ ë¹ì£¼ì¼ì ì¶©ëì ê·¹ì ì¼ë¡ ë´ì AI í¤ëì
ê´ê³ .","tags":["stable diffusion","comfyui","flux","midjourney","kling ai","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/XqUuEwNbz94","challenges":["ëë ë¸ëë í¹ì ì ê°ë ¬í ë¹ì£¼ì¼ ìì´ë´í°í° ì¬í","í¤ëì
ì íê³¼ ìì
ìëì§ ì°ê²°í기","íë ¤í 컨ì
ìí¸ì ì í ê´ê³ ì ê· í"],"approach":"ëë ì ë¸ëë ìëì§ë¥¼ Fluxì ComfyUIë¡ ê°ë ¬í ë¹ì£¼ì¼ë¡ ì¡ì í¤ëì
ê´ê³ ìì±.","images":[],"chosen":false,"selected":false},{"id":"jeju-samdasoo-ai-ad","title":"ì 주 ì¼ë¤ì AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/jrAzQej2urY/maxresdefault.jpg","description":"ì 주 ì¼ë¤ì í리미ì ìì ë¸ëë AI ê´ê³ ìì","fullDescription":"ì 주 ìì°ì ì²ê²°í¨ì ìë¤ë§í±íê² ë´ì ì¼ë¤ì AI ê´ê³ .","tags":["midjourney","kling ai","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/jrAzQej2urY","challenges":["ì 주 ìì° íê²½ ì¬ì¤ê° ìê² AIë¡ ì¬íí기","물ì í¬ëª
í¨ê³¼ ì²ê²° ì´ë¯¸ì§ íí","ë¸ëë ê°ì±ê³¼ AI ë¹ì£¼ì¼ì ì¡°í"],"approach":"ì 주 ìì°ì ì²ê²°í¨ì í¤ìëë¡ ìë¤ë§í±í íê²½ ì´ë¯¸ì§ë¥¼ ìì±í´ ë¸ëë ìì ìì±.","images":[],"chosen":false,"selected":false},{"id":"gargrin-ai-ad","title":"ê°ê·¸ë¦° AI ê´ê³ ","category":"AI Content","aspectRatio":"9/16","featured":false,"thumbnail":"https://img.youtube.com/vi/UkkfAaE347s/maxresdefault.jpg","description":"ëìì ì½ ê°ê·¸ë¦° 구ê°ì²ê²°ì AI ê´ê³ ìì","fullDescription":"ìì¾í¨ì ìê°íí ê°ê·¸ë¦° AI ê´ê³ .","tags":["midjourney","kling ai","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/shorts/UkkfAaE347s","challenges":["ê°ê·¸ë¦° í¹ì ì ë¯¼í¸ ìê°ê³¼ ì²ê²° ì´ë¯¸ì§","ì í í¹ì±ì ìê°ì ì¼ë¡ ìì°ì¤ë½ê² ì ë¬í기","ì§§ì ë¬ëíì ìì ë¸ëë ë©ìì§ ì ë¬"],"approach":"ë¯¼í¸ ì»¬ë¬ì ìì¾í¨ì í¤ìëë¡ í롬íí¸ë¥¼ 구ì±í´ 구ê°ì²ê²°ì ê´ê³ ìì±.","images":[],"chosen":false,"selected":false},{"id":"gobansikdang-ai-ad","title":"ê³ ë°ìë¹ AI ê´ê³ ","category":"Contest","aspectRatio":"16/9","featured":false,"thumbnail":"https://img.youtube.com/vi/k3K2SQUGF7Q/maxresdefault.jpg","description":"매경미ëì´ê·¸ë£¹ AI ììê´ê³ 공모ì ì°¸ì¬ì","fullDescription":"매경미ëì´ê·¸ë£¹ AI ê´ê³ 공모ì ì íê³¼ í¨ê» ëì í ê³ ë°ìë¹ ì¶íì.","tags":["stable diffusion","comfyui","midjourney","kling ai","veo","photoshop","premiere pro","capcut"],"videoUrl":"https://www.youtube.com/watch?v=k3K2SQUGF7Q","challenges":["í íì
ì¼ë¡ ì¼ê´ë ë¹ì£¼ì¼ ë°©í¥ ì ì§í기","ê³ ë°ìë¹ ë¸ëë ê°ì±ì AIë¡ ííí기","공모ì ë§ê°ì ë§ì¶ ìì±ë íë³´"],"approach":"íìë¤ê³¼ ìí ì ëë ê³ ë°ìë¹ ë¸ëë를 ë¶ìíê³ AI ììì¼ë¡ 공모ì ì¶íì ìì±.","images":[],"chosen":false,"selected":false}
2,{"id":"sodam-harness-eng","title":"SoDam Harness Eng","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"AIê° ìíí ìì
ì íë ¤ í ë ìëì¼ë¡ ë§ê³ ë°±ì
í´ ëë릴 ì ìê² í´ì£¼ë Claude Code ìì ë²¨í¸ íë¬ê·¸ì¸","cardDescription":"AIê° ìíí ìì
ì íë ¤ í ë ìëì¼ë¡ ë§ê³ ë°±ì
í´ ëë릴 ì ìê² í´ì£¼ë ìì ë²¨í¸ ë구","ogDescription":"AIê° ìíí ìì
ì íë ¤ í ë ìëì¼ë¡ ë§ê³ ë°±ì
í´ ëë릴 ì ìê² í´ì£¼ë Claude Code ìì ë²¨í¸ íë¬ê·¸ì¸ â ìì ë¡ì»¬, ì¸í°ë· ì ì¡ ìì","fullDescription":"ì¤ì¬ì© ì¤ íì¼ì ë¤ë¥¸ í´ëë¡ ì®ê¸°ë©´ ë°±ì
ë íì¸ ì§ë¬¸ë ìì´ ìë³¸ì´ ê·¸ëë¡ ì¬ë¼ì§ë 구ë©ì ë°ê²¬í´ ë§ìë¤.","tags":["JavaScript","Claude Code","AI Safety","Guardrails","Hooks","Backup","Undo","Beginner Friendly"],"githubUrl":"https://github.com/sodam-ai/SoDam-Harness-Eng","images":[],"challenges":["íì¸ì°½ ë¹ëë ì¡°ì í´ë ì¹ëª
ì ìì
ì°¨ë¨ê³¼ ë¹ë° íì¼ ì¬íì¸ì íì ê·¸ëë¡ ì ì§","ë¹ë°ë²í¸Â·í í°Â·ì¸ì¦ì íì¼ì ìì ì ê·¼íì§ ìê³ ë°±ì
ììë ì ì¸","git commit ì§ì ë¹ë°íì¼ì´ ìì´ë©´ ì´ë¦ë§ íì¸í´ 먼ì 물ì´ë´","ì´ë¦ ë°ê¾¸ê¸°Â·ë³µì¬ë¡ ë®ì´ì¨ì§ë 기존 íì¼ê¹ì§ ì ë¶ ë°±ì
ëìì¼ë¡ í¬í¨"],"techWalkthrough":{"title":"ìíë 3ë¨ê³ë¡ ëë íë¨íë ê²½ë¹ì 구조","description":"","steps":["AIê° ë구를 ì°ê¸° ì ì ê²½ë¹ì ìí ì í
ì´ ë¨¼ì ìíë를 íë¨","ìì í ìì
ì ê·¸ë¥ ì§íëê³ , ìíí ìì
ë§ ë°±ì
í íì¸ì 거침","ì¬ìê¸ ìì
ì íì¸ ì ì°¨ ìì´ ì¦ì ì°¨ë¨","ì¸í°ë· ì°ê²° ìì´ ì ë¶ ë´ ì»´í¨í° ìììë§ íë¨íê³ ì ì¥","ê°ì í´ëìì ë°ë³µëë ìì
ì 12ìê° ëì íì¸ì ê±´ëë°ëë¡ ì¤ì ê°ë¥","ë°±ì
ì ìµê·¼ 100ê°Â·30ì¼ ê¸°ì¤ì¼ë¡ ìë ì 리ë¨","Codexììë ê°ì ìë ì°¨ë¨ ëì Codex ìì²´ ì¹ì¸ì°½ê³¼ ìëë°ì¤ë¡ ëì ë³´í¸"]},"chosen":false,"selected":false},{"id":"sodam-context-eng","title":"SoDam Context Eng","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"ì½ë를 몰ë¼ë AI ì¬ì©ì¤ëª
ì를 ì¬ì´ íêµì´ë¡ ê²ì§íê³ ì 리í´ì£¼ë Claude Code·Codex íë¬ê·¸ì¸","cardDescription":"ì½ë를 몰ë¼ë AI ì¬ì©ì¤ëª
ì를 ì¬ì´ íêµì´ë¡ ê²ì§íê³ ì 리í´ì£¼ë ë구","ogDescription":"ì½ë를 몰ë¼ë AI ì¬ì©ì¤ëª
ì(CLAUDE.md·AGENTS.md)를 ì¬ì´ íêµì´ë¡ ê²ì§íê³ ì 리í´ì£¼ë Claude Code·Codex íë¬ê·¸ì¸ â ë¹ë°í¤ë ì ë ì½ì§ ìê³ ê°ë ¤ìë§ íì¸","fullDescription":"ë³´ì ê°ì¬ ì¤ ëë리기 기ë¥ì ë°±ì
í´ë ë°ì ì무 íì¼ì´ë ì§ì íë©´ ê·¸ ë´ì©ì´ ê·¸ëë¡ ë³µì¬ëë ê²°í¨ì ë°ê²¬í´ ì°í ê²½ë¡ê¹ì§ ë§ìë¤.","tags":["JavaScript","Claude Code","Codex","Context Engineering","Security","Checkup","Korean","Beginner Friendly"],"githubUrl":"https://github.com/sodam-ai/SoDam-Context-Eng","images":[],"challenges":["ë¹ë°í¤ë ê°ì ì½ê±°ë ë³´ì¬ì£¼ì§ ìê³ , ìë¤ë ì¬ì¤ë§ ê°ë¦° ì±ë¡ íì¸","íë½ ìì´ë íì¼ì ë§ë¤ì§ë ê³ ì¹ì§ë ìê³ , íì ë°±ì
ë¶í° ë§ë ë¤ìë§ ì ì©","ì격ì¦ëª
·ìì¤í
í´ëë ë°±ì
·ì²ë°©Â·ëë리기 ì ë¶ ìëì¼ë¡ ê±°ë¶","모ì·ë¶í림ì²ë¼ ê·ì¹ë§ì¼ë¡ 못 ì¡ë í목ì ëì를 구í ë¤ìë§ AIê° ì§ì íë¨"],"techWalkthrough":{"title":"AIê° ì본ì ì§ì ì ì½ê³ ìì½ ê²°ê³¼ë§ ë³´ë CLI-JSON ê²½ê³ êµ¬ì¡°","description":"","steps":["ê²ì§ì ë´ë¶ ê²ì¬ê¸°ê° íì¼ì ì½ê³ ë¹ë°í¤ ê°ì ëº ìì½ ê²°ê³¼ë§ AIìê² ì ë¬","íì ê·ì¹ì ì½ëê° ìëë¼ JSON ë°ì´í°ë¡ ê´ë¦¬í´ ì í목 ì¶ê°ê° ì¬ì","ì°¸ê³ ì ìë ìë¡ ê³ì°íì§ ìê³ ì´ë¯¸ ì°¾ì 문ì ê°ìë¡ ê·¸ ì리ìì ëºì
","ì 기 ì ê² ì림ì ë§ì§ë§ ì ê² ìê°ë§ 기ë¡í´ëê³ 30ì¼ì´ ì§ë¬ì ëë§ ì§§ê² ìë´","ì½ë±ì¤ë ìì í´ëê¹ì§ í©ì³ì íì¸íì§ë§ í´ë¡ëì½ëë ì§ì í íì¼ë§ íì¸","ì¸ë¶ ë¼ì´ë¸ë¬ë¦¬ ìì´ ëìí´ ê³µê¸ë§ ìíì ì¤ì","ìì ·ê¸ì§ ê°ì ê·ì¹ì´ ë´ê¸´ ì¤ì ì 리 ê³¼ì ìì ìëì¼ë¡ ë³´ì¡´ë¨"]},"chosen":false,"selected":false}
2,{"id":"sodam-loop-eng","title":"SoDam Loop Eng","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"AIìê² \'ì´ê±° ë ëê¹ì§ ê³ ì³ì¤\'를 ìì¼ë 무í ë°ë³µÂ·í주 ìì´ ìì íê² ëìê°ë Claude Code íë¬ê·¸ì¸","cardDescription":"AIìê² \'ì´ê±° ë ëê¹ì§ ê³ ì³ì¤\'를 ìì¼ë 무í ë°ë³µÂ·í주 ìì´ ìì íê² ëìê°ë ë구","ogDescription":"AIìê² \'ì´ê±° ë ëê¹ì§ ê³ ì³ì¤\'를 ìì¼ë 무í ë°ë³µÂ·í주 ìì´ ìì íê² ëìê°ë Claude Code íë¬ê·¸ì¸ â ìë£ëë¤ê³ ë¤ ë ê² ìëë¼ ê²ì¬ ê·¼ê±°ê° ìì´ì¼ íµê³¼","fullDescription":"무í ë°ë³µì¼ë¡ 11.7ìê°Â·6,239íë í주íë ì¤ì ì¬ê³ ê° ìì´, ë°ë³µ íì ìíì 0(무í)ì¼ë¡ë ì ë ì¤ì íì§ ëª»íê² ë§ë¤ìë¤.","tags":["JavaScript","Claude Code","AI Safety","Guardrails","Automation","Iteration","Security","Beginner Friendly"],"githubUrl":"https://github.com/sodam-ai/SoDam-Loop-Eng","images":[],"challenges":["íì°¨ë§ë¤ ì´ë²ì ë ë°ê¿ì§ 먼ì í ì¤ ìë´íì§ ìì¼ë©´ íì¼ ìì ìì²´ê° ë§í","ê°ì ê²°ê³¼ê° 3ë² ë°ë³µëë©´ íëë ê±¸ë¡ ë³´ê³ ìëì¼ë¡ ë©ì¶¤","ìì ·ê°ì í¸ì ê°ì ìí ìì
ì ë°ë³µ ì¤ìë ë§¤ë² íì¸ì 거침","ì 기ì ê² ëª¨ëë ê²°ê³¼ë§ ë³´ê³ í ë¿ ì½ëì ìì ê¸°ë¥ ìì²´ê° ìì´ ì ë 못 ê³ ì¹¨"],"techWalkthrough":{"title":"ë°ë³µ 모í°ì ìì ê²ì´í¸ë¥¼ ë¶ë¦¬í 구조","description":"","steps":["ìì ì 목í를 ë¤ë¬ê³ ë°±ì
ë¶í° ë§ë ë¤ ë¬´ê²°ì±ê¹ì§ íì¸íê³ ìì¼ ë°ë³µì ìì","ì¤íì¼ë¡ í©ê²© ì¬ë¶ê° ëì¤ë ê²ì¬ì ì¬ëì´ ë´ì¼ íë ê²ì¬ë¥¼ ë±ê¸ì ëë ë¤ë¥´ê² íì ","ì기 ìì ì ìì íì¼ì ê±´ë리ë ìëë ì´ë¤ ê¶í 모ëììë íì ì°¨ë¨ë¨","ê°ì ì°½ì ë ê° ëìë ì¸ì
ë³ë¡ ìíê° ìì´ì§ ìëë¡ ê²©ë¦¬",".env·ì¸ì¦ìì²ë¼ ë¹ë°ë¡ ë³´ì´ë íì¼ì ë´ì©ì ì ì´ì´ë³´ê³ ì´ë¦ë§ì¼ë¡ ë°±ì
ì ì¸","ìë£Â·8í·30ë¶Â·íë기·ì§ë ì¤ íëë§ ê±¸ë ¤ë ìëì¼ë¡ ë©ì¶ê³ íêµì´ë¡ ìì½","ì¸ë¶ ë¼ì´ë¸ë¬ë¦¬ ìì´ Node ë´ì¥ 기ë¥ë§ì¼ë¡ ëì"]},"chosen":false,"selected":false},{"id":"sodam-prompt-eng","title":"SoDam Prompt Eng","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"AI를 ì²ì ì°ë ë¶ë ë¹ì¹¸ë§ ì±ì°ë©´ ëë íêµì´ ê¸ì°ê¸° ì¤í¬ 10ì¢
ì 모ì ëì Claude Code íë¬ê·¸ì¸","cardDescription":"AI를 ì²ì ì°ë ë¶ë ë¹ì¹¸ë§ ì±ì°ë©´ ëë íêµì´ ê¸ì°ê¸° ì¤í¬ 10ì¢
ì 모ì ëì ë구","ogDescription":"AI를 ì²ì ì°ë ë¶ë ë¹ì¹¸ë§ ì±ì°ë©´ ëë íêµì´ ê¸ì°ê¸° ì¤í¬ 10ì¢
ì 모ì ëì Claude Code íë¬ê·¸ì¸ â ìë²Â·ë¹ì© ìì´ ì ë¶ ë¬´ë£","fullDescription":"Claude Codeì ìë ¤ì§ ì í ë문ì ì¤í¬ í´ëë§ì¼ë¡ë ì¬ëì ëª
ë ¹ì´ê° ìì ì ì¼ë¡ ë±ë¡ëì§ ìëë¤ë 걸 ë°ê²¬í´, ëª
ë ¹ì´ í´ë를 ë°ë¡ ë§ë¤ì´ í´ê²°íë¤.","tags":["Claude Code","Korean","Codex","Student","Prompt Engineering","Writing Assistant","AI Education","Skills Plugin"],"githubUrl":"https://github.com/sodam-ai/SoDam-Prompt-Eng","images":[],"challenges":["ì ì¤í¬ì´ íìíë©´ ëíë¡ ì§ì ì¤ê³í´ì ë§ëë ë©í ì¤í¬ë ì§ì","ê°ì¸ì ë³´ ì ë·í롬íí¸ í취·과ì¥ê´ê³ ì ë 공격ê¹ì§ ì¤ì ë¡ ë°©ì´ íì¸","ì´ë¦Â·ì íë²í¸ ê°ì ê°ì¸ì ë³´ ì
ë ¥ì ì ëíì§ ìëë¡ ì¤í¬ ì체를 ì¤ê³","ìë²Â·CI ë¹ì©ì 0ìì¼ë¡ ì ì§íë ¤ê³ ìëí íì´íë¼ì¸ì ì¼ë¶ë¬ ëì§ ìì"],"techWalkthrough":{"title":"ë¹ì¹¸ ì±ì°ê¸° ë°©ìì SKILL.md í
í릿 구조","description":"","steps":["ì¬ëì ëª
ë ¹ì´ë ìì°ì´ë ê°ì SKILL.mdë¡ ë¹ì¹¸ì ì±ì ëì","ì¤ì ê¸ ìì±ì ë´ ì»´í¨í°ê° ìëë¼ AI íì¬ ìë²ìì ì²ë¦¬ë¨","결과물ì ì±í
ì°½ìë§ ëì¤ê³ ë°ë¡ ì ì¥ëì§ ìì","ê¸´ê¸ ìì½Â·ìì´ ë²ìì²ë¼ ì
ë ¥ì´ íëë¿ì¸ ì¤í¬ì ì ì²´ í
ì¤í¸ë¥¼ í ë²ì ë°ì","ì¬ë¬ AI ë구ì ì¤ì¹ ìì¹ë§ ë¤ë¥¼ ë¿ ì¤í¬ íì¼ ë´ì©ì ëì¼íê² ì ì©ë¨","ì¤í¬ 10ì¢
ì¤ ìíë ê²ë§ 골ë¼ì ì¤
2ì¹í ì ìì","ì ì¤í¬ì 기ì¬íë©´ ì í´ì§ ê²ì¦ ì¤í¬ë¦½í¸ê° íìê³¼ ìì í¨í´ì ìëì¼ë¡ íì¸"]},"chosen":false,"selected":false},{"id":"sodam-agentic-eng","title":"SoDam Agentic Eng","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"AIìê² ë ìí¤ê¸° ì ê³íë¶í° ë³´ì¬ì£¼ê³ , ëëë©´ ì¬ì´ ë§ë¡ ê²í í´ì£¼ë Claude Code·Codex íë¬ê·¸ì¸","cardDescription":"AIìê² ë ìí¤ê¸° ì ê³íë¶í° ë³´ì¬ì£¼ê³ , ëëë©´ ì¬ì´ ë§ë¡ ê²í í´ì£¼ë ë구","ogDescription":"AIìê² ë ìí¤ê¸° ì ê³íë¶í° ë³´ì¬ì£¼ê³ , ëëë©´ ì¬ì´ ë§ë¡ ê²í í´ì£¼ë Claude Code·Codex íë¬ê·¸ì¸ â ìíí ëª
ë ¹ì ìëì¼ë¡ ì°¨ë¨íê±°ë íì¸ë°ì","fullDescription":"Codexìì ì¤í ì¤ì íì íë¬ê·¸ì¸ìê² ìì ì ê²ì ììí´ë ì무ë 못 ë°ëë¤ë ê²°í¨ì ë°ê²¬í´, Codexììë íì ì ì²´ ìì ì¥ì¹ë¥¼ ìì²´ ì¤ííëë¡ ê³ ì³¤ë¤.","tags":["JavaScript","Claude Code","Codex","Korean","Safety Hooks","Beginner Friendly","Agentic Engineering","Onboarding"],"githubUrl":"https://github.com/sodam-ai/SoDam-Agentic-Eng","images":[],"challenges":["ì¹ëª
ì ì¸ ëª
ë ¹ì íì íë¬ê·¸ì¸ ì¤ì¹ ì¬ë¶ì 무ê´íê² íì ìì²´ì ì¼ë¡ ì°¨ë¨","íì¸Â·ì°¨ë¨ íì ë§ë¤ ìì 기ë¡ì ë¨ê¸°ê³ , ë¹ë°ê°ì ì ì¥ ì ìëì¼ë¡ ê°ë¦¼","Codexìì ì¤í ì¤ì¼ ë íì ìê² ììíì§ ìê³ íì ì ì²´ ìì ì¥ì¹ë¥¼ ìì²´ ì¤í","ì¶ì²ë¥¼ íì¸ ì í ì¸ë¶ ì½ë를 ê³§ë°ë¡ ì¤ííë ëª
ë ¹ê¹ì§ ê°ì§í´ì ì°¨ë¨"],"techWalkthrough":{"title":"ì¤í ì§ì ì ê°ë¡ì± ìì ·íì¸Â·ì°¨ë¨ì íì íë 구조","description":"","steps":["ë구를 ì¤íí기 ì§ì ìì í
ì´ ë¨¼ì ë¼ì´ë¤ì´ ìì ·íì¸Â·ì°¨ë¨ ì¤ íëë¡ íì ","íì íë¬ê·¸ì¸ì´ ì´ììì¼ë©´ ê²¹ì¹ë ìíì íì ìê² ììí´ íì¸ì°½ì´ ë ë² ì ë¨ê² í¨","ì¹ëª
ì ì¸ ëª
ë ¹Â·ì¤ì íì¼ ìì¡°ë íì ì 무ì 무ê´íê² íì ìì²´ì ì¼ë¡ ì°¨ë¨","Codex ë°°í¬ë³¸ì¸ì§ ì¤ì¤ë¡ íë³í´, Codexììë íì ìì ìì´ íì ì ì²´ í´ë°± ì¬ì©","íì¸Â·ì°¨ë¨ íì ë§ ê¸°ë¡íê³ , ìì íê² íµê³¼í ìì
ì 기ë¡íì§ ìì ë¡ê·¸ê° ì ìì","ì¸ë¶ ë¤í¸ìí¬ ìì²ì´ë ë¹ë°ê° ì ì¥ ìì´ ë구 ì´ë¦ê³¼ ì¸ìë§ íì¤ì
ë ¥ì¼ë¡ íì¸","ê·ì¹ ê°ì ì½ëê° ìëë¼ ë°ì´í° íì¼ë¡ ê´ë¦¬í´ ì½ë ìì ìì´ ì¡°ì ê°ë¥"]},"chosen":false,"selected":false},{"id":"sodam-reverse-eng","title":"SoDam Reverse Eng","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"ë´ ì½ëê° ì´ë»ê² ëìíëì§ ì¬ì´ íêµì´ë¡ ì¤ëª
í´ì£¼ê³ , ë³´ì ì¥ì¹ë¥¼ ë¬´ë ¥ííë ¤ë ìì²ì ìëì¼ë¡ ê±°ë¶íë Claude Code íë¬ê·¸ì¸","cardDescription":"ë´ ì½ëê° ì´ë»ê² ëìíëì§ ì¬ì´ íêµì´ë¡ ì¤ëª
í´ì£¼ê³ , ìíí ìì²ì ìëì¼ë¡ ê±°ë¶íë ë구","ogDescription":"ë´ ì½ëê° ì´ë»ê² ëìíëì§ ì¬ì´ íêµì´ë¡ ì¤ëª
í´ì£¼ë Claude Code íë¬ê·¸ì¸ â ë³´ì ì¥ì¹ë¥¼ ë¬´ë ¥ííë ¤ë ìì²ì íì ê±°ë¶, ë°©ì´Â·êµì¡Â·ë³¸ì¸ ìì 물 ë¶ì ì ì©","fullDescription":"íì íë¬ê·¸ì¸ì´ ìì´ë ìíí ìì²ì ëì¹ì§ ìëë¡, íì ì 무ì 무ê´íê² íì ì¤ì¤ë¡ ìì ì ê²ì ë¤ì ìííëë¡ ë§ë¤ìë¤.","tags":["JavaScript","Claude Code","Korean","Security","Reverse Engineering","Defensive Security","Static Analysis","Android"],"githubUrl":"https://github.com/sodam-ai/SoDam-Reverse-Eng","images":[],"challenges":["ë³´ì ì¥ì¹ë¥¼ ë¬´ë ¥ííë ¤ë ìì²ì ì´ì 를 ë§ë¡ íê³ íì ê±°ë¶","ìì ì¥ì¹ íì¼ì´ ë°ëë©´ íµê³¼ê° ìëë¼ ë¶ìì ì¦ì ì¤ë¨","ë¶ì ì¤ ë°ê²¬í ë¹ë°ë²í¸Â·API í¤ë ë³´ê³ ìì ìëì¼ë¡ ê°ë ¤ì íì","ë³¸ì¸ ìì ·íê° ì¬ë¶ë¥¼ ë²í¼ ì íí ì§ë¬¸ 3ê°ë¡ 먼ì íì¸í ë¤ìë§ ë¶ì ìì"],"techWalkthrough":{"title":"AI ê±°ë¶Â·ì¤ìê° ì°¨ë¨Â·ë¬´ê²°ì± ì ê²ì ê²¹ê²¹ì´ ìì ìì 3층 구조","description":"","steps":["ë¶ì ìì ì ìì ì¥ì¹ 3ì¸µì´ ì ë¶ ì ìì¸ì§ ì¤ì¤ë¡ 먼ì ì¬íì¸","ìì ê¶Â·ë¶ì 목ì ·ì´ì© ëì ì§ë¬¸ 3ê°ë¥¼ ë²í¼ì¼ë¡ íµê³¼í´ì¼ ë¤ì ë¨ê³ë¡ ì§í","ì½ëë ì½ê¸°ë§ íê³ ì ë ì¤ííì§ ìì","ìíí ìì²ì AI ìì²´ íë¨ê³¼ ì¤ìê° ì°¨ë¨ í
ì´ ì´ì¤ì¼ë¡ ê±°ë¶","ìì íì¼ì´ ë°ëìëì§ SHA-256 í´ìë¡ íì¸íë ë¨ê³ê¹ì§ íµê³¼í´ì¼ ëì","ë¶ì ê²°ê³¼ë ë´ ì»´í¨í°ìë§ ì ì¥ëê³ ì¸ë¶ ìë²ë¡ ì ì¡ëì§ ìì","íì íë¬ê·¸ì¸ì´ ìì¼ë©´ ìí í¨í´ì ê
2³µì í´ ë ê°í ìì ë§ì 구ì±"]},"chosen":false,"selected":false},{"id":"sodam-persona","title":"SoDam Persona","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"Claude Codeì 15ëª
ì ë¬¸ê° ê´ì ì ì
í, ìí©ì ë§ê² ìëì¼ë¡ ê¹ì´ ìê² ëµíë\\nAI í르ìë íë¬ê·¸ì¸","cardDescription":"AI ì´ìì¤í´í¸ì 15ëª
ì ë¬¸ê° ê´ì ì ì
í, ìí©ì ë§ê² ìëì¼ë¡ ê¹ì´ ìê² ëµíë\\ní르ìë íë¬ê·¸ì¸","ogDescription":"Claude Codeì 15ëª
ì ë¬¸ê° ê´ì ì ì
í, ìí©ì ë§ê² ìëì¼ë¡ ê¹ì´ ìê² ëµíë AI í르ìë íë¬ê·¸ì¸","fullDescription":"ì¸í°ë·° ë°©ìì¼ë¡ ì ì ë¬¸ê° ê´ì ì ì§ì ë§ë¤ê±°ë ê³ ì¹ ì ìê³ , ê´ë ¨ íì¼ì´ ì ë¶ ìëì¼ë¡ ë§ì¶°ì§ë¤.","tags":["JavaScript","Prompt Engineering","CI/CD","Persona","Claude Code","LLM","Hooks","Developer Tools"],"githubUrl":"https://github.com/sodam-ai/SoDam-Persona","images":[],"challenges":["ê°ë°Â·ë³´ì·í¬ì 15ëª
ì ë¬¸ê° ê´ì ìë ì ì©","ë²ë¥ ·íê³ì¸ë¬´ ë± ê· í ì¡í ëµë³ì ìë ì ê³µ","ì¸ë¬´Â·ë²ë¥ ì²ë¼ 민ê°íë©´ íì¸ ìë´ ìë 첨ë¶","ì ì»´í¨í°ììë ì§§ì ì¤ì¹ë¡ ë³µì"],"techWalkthrough":{"title":"hookê³¼ skillì ë¶ë¦¬í 2ë¨ êµ¬ì¡°","description":"","steps":["ì¸ì
·ë©ìì§ë§ë¤ hookì´ ìë ì¤íë¼ ëµë³ ìì¹ì AIì ì ë¬","í¬ì·ë²ë¥ ë± í¹ì 주ì ê°ì§ ì skillì´ ê¹ì´ ìê² ì§ì","skillì´ êº¼ì§ íìì ê°ë³ê² ì ì§ë¼ ë¶ë´ ìì","ì 본 íì¼ íëë¡ ê´ë¦¬í´ íì¥íê³¼ ë´ì© ë¶ì¼ì¹ ë°©ì§","hookì ìëê²½ë¡ë¡ ëìí´ ì ì»´í¨í°ììë ë³µì","ì ì¥ìì ì¬ë¦´ ëë§ë¤ GitHub Actionsê° ê´ì ·ê·ì¹ ìì ë©´ì±
문구를 ìë ê²ì¬"]},"chosen":false,"selected":false},{"id":"claudetower","title":"ClaudeTower","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"Claude Code íë©´ ìë쪽ì ìì
ìì¹Â·ëª¨ë¸Â·Git ë¸ëì¹Â·ëí ì¬ì©ë·ë¹ì©Â·ì¬ì©ë¥ ì ë³´ì¬ì£¼ë ë구","cardDescription":"AI ì½ë© ë구 íë©´ ìë쪽ì ìì
ìì¹Â·ëª¨ë¸Â·Git ë¸ëì¹Â·ëí ì¬ì©ë·ë¹ì©Â·ì¬ì©ë¥ ì ë³´ì¬ì£¼ë ìííìì¤","fullDescription":"íë©´ íì ë°ë¼ ë§ë ê·¸ëí ë°ëì íì íëª©ì´ ìëì¼ë¡ ì¡°ì ëë¤. ëì¼ë©´ ë ì´ì´íê², ì¢ì¼ë©´ ë ì¤ìí í목ë¶í° ìëì¼ë¡ ì¨ê²¨ ì¤ë°ê¿ì ë§ëë¤.","ogDescription":"Claude Code íë©´ ìë쪽ì ìì
ìì¹Â·ëª¨ë¸Â·Git ë¸ëì¹Â·ëí ì¬ì©ë·ë¹ì©Â·ì¬ì©ë¥ ì ë³´ì¬ì£¼ë ë구 â ì¤ì¹ íì¼ íëë¡ ë°ë¡ ì¤í","tags":["JavaScript","CLI","Claude Code","Single Executable","Node.js","Statusline","Cross-Platform","Security"],"githubUrl":"https://github.com/sodam-ai/ClaudeTower","images":[],"challenges":["Git ì ì¥ìì¼ ëë§ ë¸ëì¹Â·ë³ê²½ì¬í ìë íì","ê°ë° íë¦ì ë°©í´íì§ ìê³ íìí ì ë³´ë§ íì¸ ê°ë¥","ê³ì ì 보를 ì í ë¤ë£¨ì§ ìì ë³´ì ì´ì를 ìì² ì°¨ë¨","ë³µì¡í ëª
ë ¹ì´ ìì´ ì±í
íë§ëë¡ ì¤ì ë³ê²½ ê°ë¥"],"techWalkthrough":{"title":"ìííìì¤ê³¼ ê³ì 기ë¥ì 모ë ë¨ìë¡ ìì í ë¶ë¦¬í ìí¤í
ì²","description":"","steps":["Claude Codeê° 3ì´ ì£¼ê¸°ë¡ ìì
ìì¹Â·ëª¨ë¸Â·ì»¨í
ì¤í¸Â·ë¹ì© ì 보를 JSONì¼ë¡ ì ë¬","ì ë¬ë°ì ê°ì ì¬ëì´ ì½ê¸° ì¢ì í ì¤ë¡ ê°ê³µí´ ì¦ì íë©´ì ë°í","ì¸ë¶ ìë²ë¡ ì ì¡íì§ ìê³ ì ë¶ ë´ ì»´í¨í° ìììë§ ì²ë¦¬","ë³´ìì ìí´ ìííìì¤ê³¼ ê³ì ì í 모ëì ì²ìë¶í° ë¶ë¦¬í´ì ì¤ê³","ê³ì ì½ëë ë¹ë ìì ì ì¤í íì¼ìì ìëì¼ë¡ ì ì¸ë¨","ë 기ë¥ì´ ìë¡ ìì´ì§ ììëì§ ë§¤ ë¹ëë§ë¤ ìëì¼ë¡ ê²ì¬","Node.js ì¤ì¹ ìì´ ì¤íëë ë¨ì¼ ì¤ííì¼(SEA)ì´ë¼ íì¼ íëë¡ ë°ë¡ ì¤í"]},"chosen":false,"selected":false},{"id":"sodam-wikimate","title":"SoDam WikiMate","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"AIìê² \'ì 리í´ì¤\'ë¼ê³ ë§íë©´ í©ì´ì§ ìë£ë¥¼ ìµìëì¸ì ì 리·ì°ê²°Â·ë¶ë¥Â·ìì½ê¹ì§ í´ì£¼ë Claude Code íë¬ê·¸ì¸","cardDescription":"ë§ íë§ëë¡ í©ì´ì§ ìë£ë¥¼ ìµìëì¸ ë
¸í¸ë¡ ì 리íê³ ,\\nì°ê²°Â·ë¶ë¥Â·ìì½ê¹ì§ ìëì¼ë¡ í´ì£¼ë ë구","ogDescription":"AIìê² \'ì 리í´ì¤\'ë¼ê³ ë§íë©´ í©ì´ì§ ìë£ë¥¼ ìµìëì¸ ë
¸í¸ë¡ ì 리íê³ , ê´ë ¨ ë
¸í¸ë¼ë¦¬ ì°ê²°Â·ë¶ë¥Â·ìì½ê¹ì§ ìëì¼ë¡ í´ì£¼ë Claude Code íë¬ê·¸ì¸ â ìì ìì´ ìì íê²","fullDescription":"ì¤ì ë¡ ë³¼í¸ ë°ì¼ë¡ íì¼ì
2 ë¹¼ë리ë 공격ì ì§ì ìëí´ë´¤ê³ , ìíí ê²½ë¡ë ì ë¶ ì°¨ë¨ëì´ ë³¼í¸ ììë§ íì¼ì´ ë§ë¤ì´ì§ë ê²ê¹ì§ íì¸íë¤.","tags":["JavaScript","MCP","Claude Code","Codex","Obsidian","Notion","Knowledge Management","AI Agent"],"githubUrl":"https://github.com/sodam-ai/SoDam-WikiMate","images":[],"challenges":["ìì½Â·ìëë¶ë¥ ë± ì°ê¸° ìì
ì íì ê³íë¶í° ë³´ì¬ì£¼ê³ ì¹ì¸í´ì¼ ì¤í","ìì½ ê¸°ë¥ì ì문ì ìì íë ì½ë ê²½ë¡ ìì²´ê° ìì´ ì본 ê·¸ëë¡ ë³´ì¡´","ì¤í íìë ë³ë ê²ì ìë¸ìì´ì í¸ê° ì문 ì곡 ì¬ë¶ë¥¼ ì¬íì¸","ìì ê¸°ë¥ ìì´ ë³´ê´í¨ì¼ë¡ ì´ëë§ í´ ì¸ì ë ëë리기 ê°ë¥"],"techWalkthrough":{"title":"AIê° íë¨íê³ ìë²ë íë³´ ì 공과 ìì í ì°ê¸°ë§ ë´ë¹íë 구조","description":"","steps":["MCP ìë² íëê° ì 리·ì ê²Â·ìì ·기ë¡Â·ë³´ê´í¨ì°¾ê¸°Â·ë§í¬Â·ë¶ë¥Â·ìì½ 8ê° ë구를 ë°°ì ","ê´ë ¨Â·ë¶ë¥ íë¨ì AIê° ì§ì íê³ , ìë²ë íë³´ ì 공과 ìì í ì°ê¸°ë§ ë´ë¹","í ë
¸í¸ì ì´ì´ì§ë ê´ë ¨ ë
¸í¸ë ìµë 5ê°ë¡ ì½ëê° ê°ì í´ ê·¸ëíê° ìí¤ë ê²ì ë°©ì§","ë³¼í¸ ë° ê²½ë¡Â·ìì í´ë ì´ë·ë¤í¸ìí¬ ê²½ë¡ë ì½ëë¡ ì ë¶ ì°¨ë¨","ì¸ë¶ í
ì¤í¸ ì ì§ì문ì ëª
ë ¹ì´ ìëë¼ ë°ì´í°ë¡ë§ ì²ë¦¬í´ í롬íí¸ ì¸ì ì
ì ë°©ì´","ë§ë¤ê±°ë ì®ê¸°ê±°ë ê³ ì¹ ëª¨ë ìì
ì´ ë¡ê·¸ íì¼ì ìëì¼ë¡ 기ë¡","ì¸ë¶ ë¼ì´ë¸ë¬ë¦¬ ìì´ Node.js 기본 기ë¥ë§ì¼ë¡ ëìíë 무ìì¡´ ìë²"]},"chosen":false,"selected":false},{"id":"sodam-o-brain","title":"SoDam O-Brain","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"Claude Code·Codex ëíìì ê²°ì ·ì½ìì ìëì¼ë¡ 기ìµí´ëê³ , ì§ì ê·¸ëíë¡ ê²ì·ìê°íí´ì£¼ë ìì ë¡ì»¬ AI ê¸°ìµ ë구","cardDescription":"AI ëíìì ê²°ì ·ì½ìì ìëì¼ë¡ 기ìµí´ëê³ ,\\nì§ì ê·¸ëíë¡ ê²ì·ìê°íí´ì£¼ë ìì ë¡ì»¬ ê¸°ìµ ë구","ogDescription":"Claude Code·Codex ëíìì ê²°ì ·ì½ìì ìëì¼ë¡ 기ìµí´ëê³ , ì§ì ê·¸ëíë¡ ê²ì·ìê°íí´ì£¼ë ìì ë¡ì»¬ AI ê¸°ìµ ë구 â ì¸ë¶ ì ì¡ ìì´ API í¤Â·ê³¼ê¸ë ìì","fullDescription":"기ìµì´ 5000ê±´ê¹ì§ ìì¸ íê²½ìì ê·¸ëí ìì±ì´ 9.8ì´ ê±¸ë¦¬ë 걸, ì¼ì ê°ì를 ëì¼ë©´ ìëì¼ë¡ ë¨ìííë ì±ë¥ ê°ëë¡ 8msê¹ì§ ì¤ìë¤(ì½ 300ë°°).","tags":["JavaScript","SQLite","Knowledge Graph","MCP","Claude Code","Local-First","Memory","Embeddings"],"githubUrl":"https://github.com/sodam-ai/SoDam_O-Brain","images":[],"challenges":["API í¤Â·ë¹ë°ë²í¸ë ì ì¥ ì ìëì¼ë¡ ì§ìì§ê³ , ìë²ë ë´ ì»´í¨í° ìììë§ ì´ë¦¼","íì¸ë 기ìµì´ ìë ì¶ì¶ ë
¸ì´ì¦ë³´ë¤ ê²ì ê²°ê³¼ ìë¡ ì¤ëë¡ ìì ë°ì","ë¹ì·í 기ìµì ìëì¼ë¡ ì°¾ì ë³í©Â·ìì ì ì, ìì í ê°ì ë´ì©ì ì¼ê´ ì 리ë ê°ë¥","ìì í´ë 10ì´ ìì ëë릴 ì ìê³ , ê·¸ ì ì ìë ë°±ì
ë¶í° ë§ë¤ì´ë "],"techWalkthrough":{"title":"í¤ìë ê²ìê³¼ ì미 ê²ìì í¨ê» ì°ë íì´ë¸ë¦¬ë 구조","description":"","steps":["ëí ë´ì©ì ë³´ì íí°ë¥¼ ê±°ì¹ ë¤ ë¡ì»¬ AI ìë² ë©ì ë§ë¤ì´ SQLiteì ì ì¥","ê²ìì í¤ìë(FTS5)ì ì미 ì ì¬ë(벡í°) 결과를 í¨ê» ë°ìí´ ìì를 매ê¹","AIê° ìëì¼ë¡ ë½ìë¸ ê¸°ìµì 30ì¼ ë°ê°ê¸°ë¡ ì 뢰ëê° ì ì ë®ìì§","ë ì§ë¥¼ ì§ì íë©´ ê·¸ ìì 기ì¤ì¼ë¡ ì´ììë 기ìµë§ ìê°ì¬ííë¯ ì¡°í ê°ë¥","ê´ê³ê° ìë 기ìµì ì¬ëì´ ì§ì ì°ê²° ì¬ë¶ë¥¼ ê²°ì íë ì ì íë¡ë§ ì¬ë¼ê°","ìë² ì¤íë§ë¤ ì ë¡ì»¬ API í í°ì ë°ê¸í´ 모ë ìì²ì ê²ì¬","ì¹ ëìë³´ë ìì²´ë Claude Code ìì´ë ë¨ë
ì¼ë¡ ì¤í ê°ë¥"]},"chosen":false,"selected":false},{"id":"sodam-agent","title":"SoDam-Agent","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"Claude Codeì AI ìì´ì í¸ í 10ì¢
ì í ë²ì ì¤ì¹íê³ , ë´ ìì´ì í¸ë ì§ì ë§ë¤ê³ ê°ë¥´ì¹ ì ìë íë¬ê·¸ì¸","cardDescription":"ìí ë³ AI ìì´ì í¸ í 10ì¢
ì í ë²ì ì¤ì¹íê³ ,\\nì¤ì¹ íìë ë´ ìì´ì í¸ë¥¼ ì§ì ë§ë¤ê³ ê°ë¥´ì¹ ì ìë ë구","ogDescription":"Claude Codeì ìí ë³ AI ìì´ì í¸ í 10ì¢
ì í ë²ì ì¤ì¹íê³ , ì¤ì¹ íìë ë´ ìì´ì í¸ë¥¼ ì§ì ë§ë¤ê³ ê°ë¥´ì¹ ì ìë íë¬ê·¸ì¸ â Codex·Gemini CLI·Cursorì© ë² í ì§ìê¹ì§","fullDescription":"ë¨ì´ ë§ë í íì¼ì ì¤ëª
Â·ëª¨ë¸ ê°ì ì¤ë°ê¿ì 몰ë ì¬ì´ ìì´ì í¸ ê¶íì ì¡°ìíë 공격ì ì¤ì ë¡ ì¬íí´ ì°¾ìë´ê³ ë§ìë¤.","tags":["JavaScript","Claude Code","Subagents","MCP","Plugin Marketplace","Codex","Cursor","Agent Team"],"githubUrl":"https://github.com/sodam-ai/SoDam-Agent","images":[],"challenges":["í ìì´ì í¸ë ì§ì ê³ ì¹ ì ìê³ , ë³µì¬ë³¸ì ë§ë¤ì´ì¼ë§ ë´ ë°©ìëë¡ ê°ë¥´ì¹ ì ìì","ìíí ëª
ë ¹ì ë´ì ë구ë ì ì ìë íëê° ìì¸ í íì¼ì ì¤ì¹ ì ì ìëì¼ë¡ 걸ë¬ì§","API í¤ë íì¼ì ì§ì ì ì§ ìê³ ì´ë¦ë§ ë±ë¡í´ ì¤ì ê°ì ë´ ì»´í¨í° íê²½ë³ìì ë¨ê¹","Codex·Gemini CLI·Cursorë ë°©ìì´ ë¬ë¼ 못 미ì¹ë ë¶ë¶ê¹ì§ ì ì§íê² ë°íê³ ì§ì"],"techWalkthrough":{"title":"ìë² ìì´ GitHubê³¼ Claude Codeë§ì¼ë¡ ëìíë ì¤ì¹í 구조","description":"","steps":["ë§ì¼íë ì´ì¤ ë±ë¡ í ë², í ì¤ì¹ë ìíë íë§ ê³¨ë¼ì ì¤
2ì¹","ì¤ì¹ë íì GitHubìì ë°ìì ìºì í´ëì ì ì¥, ì¬ììíë©´ í:ìí ë¡ ë±ë¡ë¨","ì´ë¦ì´ í:ìí íìì´ë¼ ë´ê° ë§ë ì§ìê³¼ í ì§ìì´ íì 구ë¶ë¨","ê° ì§ìì ê²í ìë ì½ê¸° ì ì©ì²ë¼ íìí ëêµ¬ë§ ìµì ê¶íì¼ë¡ ë¶ì¬ë°ì","context7 ê°ì ìë£ê²ì ë구ë ì¹ì±í·리ìì¹í ì¤ì¹ ì ìëì¼ë¡ í¨ê» ì°ê²°ë¨","ì ì§ì ë§ë¤ê¸°Â·ê°ë¥´ì¹ê¸°Â·ì ì¥Â·ë³µì¬Â·ìì ê¹ì§ ëª
ë ¹ 5ê°ë¡ í°ë¯¸ë ìì´ ì²ë¦¬","ì§ì ìì ë ë°±ì
íì¼ì ë¨ê¸°ê³ ìµì 10ê°ê¹ì§ë§ ìëì¼ë¡ ì ì§"]},"chosen":false,"selected":false},{"id":"sodam-design-kit","title":"SoDam Design Kit","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"Figma ëìì¸ì shadcn/ui ì½ëë¡ ë§ë¤ê³ , ì¤ì ë¸ë¼ì°ì ê²ì¦ì íµê³¼í´ì¼ë§ ìë£ë¡ ì¸ì íë Claude Code ëìì¸ ìëí íë¬ê·¸ì¸","cardDescription":"Figma ëìì¸ì shadcn/ui ì½ëë¡ ë§ë¤ê³ , ì¤ì ë¸ë¼ì°ì ê²ì¦ì íµê³¼í´ì¼ë§ ìë£ë¡ ì¸ì íë ë구","ogDescription":"Figma ëìì¸ì shadcn/ui ì½ëë¡ ë§ë¤ê³ , ì¤ì ë¸ë¼ì°ì ê²ì¦(Playwright+axe-core)ì íµê³¼í´ì¼ë§ ìë£ë¡ ì¸ì íë Claude Code ëìì¸ ìëí íë¬ê·¸ì¸ â ìë£ ë³´ê³ ì체를 기ê³ì ì¼ë¡ ì°¨ë¨","fullDescription":"íì ììë ì±ê³µì´ë¼ê³ ì í ìëë° ì ì ì¤í¬ë¦°ì· íì¼ì´ íë¡ì í¸ í´ë ë°ì ì ì¥ëë ê²°í¨ì ì ì¸ì
ì¬í í
ì¤í¸ ì¤ ë°ê²¬í´, ì ì¥ ìì¹ë¥¼ íì íë¡ì í¸ í´ë 기ì¤ì¼ë¡ ë¤ì ê³ì°íëë¡ ê³ ì³¤ë¤.","tags":["JavaScript","Claude Code","Figma","Next.js","shadcn/ui","Playwright","Accessibility","Design Automation"],"githubUrl":"https://github.com/sodam-ai/SoDam-Design-Kit","images":[],"challenges":["ì¤ì ë¸ë¼ì°ì ê²ì¦ì íµê³¼ 못 íë©´ ìë£ë¼ê³ ë³´ê³ íë ê² ì체를 기ê³ì ì¼ë¡ ì°¨ë¨","ì ì»´í¬ëí¸ì ìì·ê°ê²© ê°ì´ ì«ìë¡ íëì½ë©ë¼ ìì¼ë©´ ë°°ì¹ ì체를 ê±°ë¶","모ë°ì¼Â·íë¸ë¦¿Â·PC 3ê°ì§ íë©´ í¬ê¸°ì ì ê·¼ì± ê²ì¬ë¥¼ ìëì¼ë¡ íµê³¼í´ì¼ í¨","ì¤í¨í´ë ìµë 3íê¹ì§ ìë ì¬ìëíê³ , ì°ì 2í ì¤í¨í´ì¼ ìµì¢
ì¤í¨ë¡ íì "],"techWalkthrough":{"title":"Figma ëìì¸ì ì½ì´ ì½ëë¡ ë§ë¤ê³ ë¸ë¼ì°ì ìì ì§ì ê²ì¦íë íì´íë¼ì¸","description":"","steps":["Figma ê³µì ë§í¬ë¥¼ ì½ì´ ì»´í¬ëí¸ ë§¤í ì ë³´ë¡ ê¸°ë¡","매íë ì»´í¬ëí¸ë ì¬ì¬ì©íê³ , ìë ì»´í¬ëí¸ë ìë¡ ì½ëë¡ ìì±","ìì±í ì½ë를 미리보기 íë©´ì¼ë¡ ëì°ê³ ê°ë° ìë²ë¥¼ ìë ì¤í","ì¤ì ë¸ë¼ì°ì ìì ì ê·¼ì± ê²ì¬ì 3ê°ì§ íë©´ í¬ê¸° ê²ì¬ë¥¼ ìë ì¤í","íµê³¼íë©´ íì ì를 ë¨ê¸°ê³ , ì¤í¨íë©´ ìë£ ë³´ê³ ìì²´ê° ë§í","í ë² ì½ì Figma ì ë³´ë ì ì¥í´ëê³ ì¬ì¬ì©í´ ë¬´ë£ íëì ì 6í ì íì ìë","Figma ì´ë¯¸ì§ 주ìë 7ì¼ ë¤ ë§ë£ëë¯ë¡ ì¦ì ë´ë ¤ë°ì ë¡ì»¬ì ì ì¥"]},"chosen":false,"selected":false},{"id":"business-counselor","title":"Business Counselor","category":"Vibe Coding","aspectRatio":"16/9","featured":false,"thumbnail":"","description":"ì¬ì
ìì´ëì´ë¥¼ 13ëª
ì ë¬¸ê° ê´ì ê³¼ ì ë í ë¡ ì¼ë¡ ëì² íê² íë
í´ go·iterate·no-go íì ê¹ì§ ë´ë ¤ì£¼ë Claude Code íë¬ê·¸ì¸","cardDescription":"ì¬ì
ìì´ëì´ë¥¼ 13ëª
ì ë¬¸ê° ê´ì ì¼ë¡ ëì² íê² íë
í´\\ngo·iterate·no-goë¡ íì í´ì£¼ë ë구","ogDescription":"ì¬ì
ìì´ëì´ë¥¼ ì
ë ¥íë©´ 13ëª
ì ë¬¸ê° ê´ì ê³¼ ì ë í ë¡ ì¼ë¡ ëì² íê² íë
í´ go·iterate·no-go íì ê¹ì§ ë´ë ¤ì£¼ë Claude Code íë¬ê·¸ì¸ â ì¸ë¶ ì ì¡ ìì´ ì ë¶ ë¡ì»¬ìë§ ì ì¥","fullDescription":"ë¶ìì ë§¡ë ìë¸ìì´ì í¸ìë ì½ê¸°Â·ì°ê¸° ê¶íë§ ì£¼ê³ ì¸í°ë· ì ì ë구 ì체를 ìì ì£¼ì§ ìì, ì¸ë¶ë¡ ìì´ëê°ë ê² ì ì±
ì´ ìëë¼ êµ¬ì¡°ì ì¼ë¡ ë¶ê°ë¥íë¤.","tags":["Claude Code","Markdown","Prompt Engineering","Business Analysis","Lean Canvas","Decision Support","CLI","Startup"],"githubUrl":"https://github.com/sodam-ai/business-counselor","
2images":[],"challenges":["ë²ë¬´Â·í¬ìì ê´ì ì´ ê°íê² ë¶ì ì ì´ë©´ íì ì ë³´ì·ë¹ì¶ì² 쪽ì¼ë¡ ê°ì ë¡ ê¸°ì¸ì´ì§","ìì´ëì´ê° 모í¸íë©´ AIê° ììë¡ ë겨ì§ì§ ìê³ ë¨¼ì ë³´ê° ì§ë¬¸ë¶í° í¨","íë¡í 기ë°ì¼ë¡ AIê° ë¨¼ì ì¬ì
ìì´ëì´ë¥¼ ì¶ì²í´ì£¼ë 기ë¥ë ì§ì","모ë ê²°ì 기ë¡ì ì§ì°ê±°ë ê³ ì¹ ì ìê² ê³ì ìì´ê¸°ë§ í¨"],"techWalkthrough":{"title":"ëª
ë ¹ íëê° ìë¸ìì´ì í¸ í¸ì¶ í ë²ì¼ë¡ 5ë¨ê³ ë¶ìì ì ë¶ ëë´ë 구조","description":"","steps":["evaluate í ë²ì¼ë¡ 13ëª
íê°ë¶í° ì ë í ë¡ ê¹ì§ 5ë¨ê³ë¥¼ 모ë í ë²ì ì²ë¦¬","íê° ê²°ê³¼ìë ì´ë ìì íë¡íì 기ì¤ì¼ë¡ ë§ë¤ì´ì¡ëì§ íì¸ ê°ì´ ì¤ì ë¡ ê³ì°ëì´ í¨ê» ì ì¥ë¨","ê²°ê³¼ë íì ·íì ë·ê°ì ·ë§í 곳·ë¤ì íëì ë´ì ãíë ìì½ã ì¹´ëë¡ ë¨¼ì ë³´ì¬ì¤","ì ì²´ 모ëë¡ ë³´ë©´ 5ë¨ê³ ìì¸ ë¶ìê¹ì§ ê°ì ê¹ì´ë¡ ì ë¶ íì¸ ê°ë¥","ë³ë ìë²ë ë°ì´í°ë² ì´ì¤ ìì´ ë§í¬ë¤ì´ íì¼ê³¼ Claude Code íëë¡ë§ ëì","ì¸í°ë·°ë¡ ìì ì본·ìê°Â·ìë ì ë³´ê° ìì¼ë©´ íê°ê° ë´ ìí©ì ë§ì¶° ë 구체ì ì¼ë¡ ëì´","íë¡íì ì§ì°ë©´ ë¹ê°ì ê²½ê³ ì ëª
ìì íì¸ì ê±°ì¹ ë¤ìë§ ì¤ì ë¡ ìì ë¨"]},"chosen":false,"selected":false}]')}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.