1시간만에 Chat GPT 클론 with Cursor (원데이 클래스)
무료
입문 / nextjs, ChatGPT, React, TypeScript, TailwindCSS
4.9
(10)
Next.js + Cursor IDE 로 챗 프로그램을 한시간만에 구현하는 능력을 가질 수 있어요.
입문
nextjs, ChatGPT, React
프론트 개발자로 네카라쿠배 중 하나의 IT서비스 기업에 재직하고 있습니다. 😀
🚀 SW마에스트로 Expert 취업 멘토링
🚀 Naver Boostcamp BE 멘토 경험
🚀 FE 7Code 로드맵 강의 제작
1시간만에 Chat GPT 클론 with Cursor (원데이 클래스)
무료
입문 / nextjs, ChatGPT, React, TypeScript, TailwindCSS
4.9
(10)
Next.js + Cursor IDE 로 챗 프로그램을 한시간만에 구현하는 능력을 가질 수 있어요.
입문
nextjs, ChatGPT, React
Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)
₩55,000
6일만
30%
₩38,500
초급 / Next.js, supabase, React, 클론코딩
4.9
(22)
Firebase의 SQL버전! Supabase를 통해 Next.js 풀 스택 기초를 마스터 할 수 있어요.!
초급
Next.js, supabase, React
기초부터 배우는 Next YTMusic 클론 코딩 (with next.js 14, UI 마스터)
₩46,200
6일만
30%
₩32,340
초급 / Next.js, React, TailwindCSS, zustand, 클론코딩, 인터랙티브 웹
4.4
(34)
React, Next.JS 14, TailwindCss, RadixUI, Shadcn, zustand 으로 YoutubeMusic 웹사이트를 클론합니다. NextJS 기초부터 UI 중점으로 웹프론트 기초를 마스터 할 수 있어요.!
초급
Next.js, React, TailwindCSS
개발자 취업 전략 시크릿 - 7CODE (네카라쿠배 로드맵 완성)
₩33,000
6일만
30%
₩23,100
입문 / 면접, 기술면접, 포트폴리오, 코딩 테스트
5.0
(18)
프론트 개발자 취업에 필요한 단계를 7가지 코드로 정리했습니다. 저는 개발자 선배가 없어서 취준때 막연했는데, 이제 걱정하지 마세요. 😀
입문
면접, 기술면접, 포트폴리오
React + GPT API로 AI회고록 서비스 개발 (원데이 클래스)
무료
초급 / React, ChatGPT, JavaScript, HTML/CSS, Node.js
4.9
(25)
1시간안에 끝내는 React기반의 GPT AI서비스 강의 수강 후 나만의 AI GPT SASS 솔루션을 만들어 보세요.
초급
React, ChatGPT, JavaScript
질문&답변
Server Actions CRUD 로직, RLS 테스트 권한 error
npx supabase login혹시 로그인이 풀리지 않으셨나요?( 다시 시도해보세요! )
질문&답변
DBeaver로 supabase connection해보기
(사진)Connection 위치가 이동하여서 아래 사진에서 파리미터를 찾을 수 있습니다.!(사진)
질문&답변
문의드립니다.
그리고 SSR로 배포할때, 일반적으로 Node.js 서버를 DMZ 영역에 구성하는지 아니면, WAS처럼 내부망에 구성하는지도 궁금합니다. 인프라 구성은 회사나 환경에 따라서 많이 다를것 같습니다. ~ Next.js가 WAS (Web Application Server)의 역할을 하죠. 그런 Next.js는 node.js 이구요. DMZ영역에 넣을지 말지는 인프라에 따라 다를텐데요. k8s 환경을 사용하고 있어서 외부 트래픽을 LoadBalancer(LB)로 받아서 nginx + next.js + logger + 등등 으로 구성된 Pod로 트래픽을 보내고 있습니다. *MZ 방식으로 클러스터링을 구성합니다.*Pod의 숫자를 Scale in-out 가능한 환경입니다.
질문&답변
문의드립니다.
안녕하세요! ( 답변이 늦어서 죄송합니다.!) 보통 React로 csr을 만들어 배포하는데 next.js로 SSR 페이지 없이 CSR app을 만들어 웹서버(NGINX)에 배포할 수 있는지 궁금합니다.가능합니다. React로 CSR의 환경을 구축하기 위해서는, 빌드를 해야하죠. 빌드한 결과물들은 정적 파일들이 됩니다. next.js를 쓰는 이유는 SSR을 위해서 입니다. 물론 CSR를 포함하고 있죠. next.js를 이용해서 완전 정적 빌드를 하면 됩니다.공식문서 : https://inf.run/MSesp 를 꼭 읽어보세요.! 완전히 CSR를 위한 환경을 구축하려면 서버사이드에서 처리하는 기능들( 대표적으로 api router handler, 서버 액션, ssr )을 포기 하고요. (문서 요약은 아래 gpt 답변 참고 바랍니다.) 네, 가능합니다. Next.js를 완전히 정적인 HTML 파일로 빌드하려면 next export 기능을 사용하면 돼요.이렇게 하면 Next.js 앱을 정적 파일들(HTML, CSS, JS)로 변환해서 별도의 서버 없이도 호스팅할 수 있어요. ✅ 완전 정적 빌드 (Static HTML Export) 방법1. next.config.js 설정module.exports = { output: 'export', // Next.js 13 이상에서는 이렇게 설정 };✅ next build 후 next export 실행 시 필요했던 설정을 간소화했어요.✅ output: 'export'을 설정하면 next export가 자동 실행돼요. 2. 빌드 및 정적 파일 생성npm run build• 빌드가 끝나면 .next/out 폴더가 생성돼요.• 이 폴더 안의 파일들을 정적 서버(Nginx, Vercel, Netlify, GitHub Pages 등)에 업로드하면 돼요. 🔹 제한 사항• 서버 사이드 기능 (getServerSideProps) 지원 안됨→ getStaticProps와 getStaticPaths만 사용해야 해요.• API 라우트 (/api/*) 지원 안됨→ 백엔드 API가 필요하면 별도 서버가 필요해요.• 동적 라우팅 (Fallback 없는 getStaticPaths) 제한→ getStaticPaths를 사용하면 빌드시 미리 생성된 페이지만 제공돼요. ✅ 추천 사용처• 블로그, 문서 사이트, 랜딩 페이지 등 변경이 적은 웹사이트• CDN을 통해 빠르게 배포하고 싶은 경우 (Vercel, Netlify, S3 등) 서버 기능 없이 정적 페이지만 필요한 경우 next export를 쓰면 가볍고 빠르게 배포할 수 있어요! 🚀
질문&답변
Vercel signup이 안되요,, 계속 제 깃허브 계정은 추가 인증이 필요하다며 registration@vercel.com에 문의를 하라고 하네요,,, 이럴땐 진행을 어찌해야할까요,,,
AWS 지식이 있으시면 EC2, 아니면 Heroku에 배포하는것도 하나의 방법이긴 합니다.
질문&답변
Vercel signup이 안되요,, 계속 제 깃허브 계정은 추가 인증이 필요하다며 registration@vercel.com에 문의를 하라고 하네요,,, 이럴땐 진행을 어찌해야할까요,,,
github에 2FA 인증 하셨나요? 최근에 정책이 바뀌어서 2단계 인증이 필수긴합니다. 그래도 안된다면 최후의 수단으로는 github 계정을 하나 더 만드셔야 되겠네요.
질문&답변
에러, 로딩 내용 페이지를 모든 페이지에 다 만드는 이유가 따로 있나요?
안녕하세요. 질문주셔서 감사합니다. app 디렉터리에서 loading.tsx 파일은 특수한 파일입니다. 그래서 어쩔수 없이 중복으로 넣어야 해요. 그것이 3.4 React Suspense ( Streaming, Progressive Hydration ) 의 개념입니다. 제가 설명이 부족했던 부분 입니다. ! 1."모듈로 만들어 여러 곳에서 재사용하는 방식이 더 효율적"-> loader.tsx로 재사용성을 그나마 가져가도록 만들었어요. 2.에러나 로딩을 전역적으로 1번만 넣으면 ? root layout에 loading.tsx를 추가하면 앱 전체에 대한 로딩 UI가 적용되고, 추후 서브 페이지 이동할때는 로딩이 없습니다. 3.서브 페이지의 에러나 로딩을 중복해서 넣지 않고, 클라이언트 상태로 전역적으로 1번만 관리하면? SSR의 Loading 상태를 CSR의 상태관리로 대신하는것은 생각해본 방법은 아니지만 가능해 보입니다. 다만 정석적인 방법은 아니긴 합니다. React Suspense 컴포넌트에는 fallback(loading) 컴포넌트를 받을 수 있는데 loading 컴포넌트를 넣지 않는 방법을 생각해주신 것 같네요. fallback 컴포넌트 ( loading 컴포넌트, app router에서는 중복을 정의 했던 그 loading.tsx 입니다. ) 안넣어도 무방합니다. 문제점은 error, loading이 끝나는 처리는 따로 해주셔야 하는데 그게 더 복잡해질 수 있어요. 4.차리리 중복해서 넣는 loading.tsx를 제거하는게 나은 선택일 수 있습니다. 그러나 SSR 이 오래 걸리는 케이스라면, 사용자 입장에서는 페이지가 잠깐 먹통이 되었다고 생각할 수 있어요. 추가로 아래 GPT 응답을 참고해주세요.!🤖 next.js app router에서 root layout 에 loading 파일 넣는것과 서브 페이지에 loading 파일 넣는것과 안넣는것의 차이는?🤖 결론• root layout에 loading.tsx를 추가하면 앱 전체에 대한 로딩 UI가 적용돼요.• 서브 페이지에만 loading.tsx를 추가하면 그 페이지에 한정된 로딩 UI만 표시돼요.• 아무데도 loading.tsx를 추가하지 않으면, Next.js의 기본 라우팅 방식(서버 사이드 렌더링 & 클라이언트 측 전환)이 적용되며, 별도의 로딩 화면 없이 페이지가 변경돼요. 1. root layout에 loading.tsx 추가 파일 위치:app/loading.tsx동작 방식:• 앱 전체에 대한 로딩 UI가 적용돼요.• 페이지 전환 시마다 loading.tsx가 표시돼요.• 레이아웃이 변경되지 않는 경우에도 로딩이 발생할 수 있어요. 예제 코드 (app/loading.tsx)export default function Loading() { return 로딩 중...; }사용 예시:app/ ├── layout.tsx ├── loading.tsx // 전체 앱의 로딩 UI ├── page.tsx ├── dashboard/ │ ├── page.tsx │ ├── loading.tsx // 이 파일이 있으면 dashboard만 개별 로딩 적용됨👉 모든 페이지 전환에서 loading.tsx가 적용되므로, 글로벌한 로딩 상태를 다룰 때 유용해요. 2. 특정 서브 페이지에 loading.tsx 추가 파일 위치 (예: dashboard 페이지에 추가):app/dashboard/loading.tsx동작 방식:• dashboard 페이지가 로딩될 때만 loading.tsx가 표시돼요.• dashboard 내부에서 페이지 이동 시에도 적용 가능해요.• 다른 페이지에는 영향을 주지 않아요. 👉 특정 페이지의 로딩 상태만 관리하고 싶을 때 유용해요. 3. loading.tsx를 넣지 않으면?• 페이지 전환 시 Next.js의 기본 렌더링 방식(서버 사이드 렌더링 + 클라이언트 전환)이 동작해요.• 새 페이지를 가져오는 동안 화면이 빈 상태가 될 수도 있어요.• 필요하면 Suspense를 활용해 비동기 렌더링을 제어할 수도 있어요. 예제 (클라이언트 컴포넌트에서 Suspense 사용)import { Suspense } from "react"; import SomeComponent from "./SomeComponent"; export default function Page() { return ( 로딩 중...}> ); }👉 loading.tsx를 추가하지 않아도, Suspense를 활용하면 비동기 데이터를 로딩하는 동안 특정 UI를 보여줄 수 있어요. ✅ 정리위치적용 범위언제 유용한가?app/loading.tsx앱 전체모든 페이지 전환에서 로딩 UI를 적용할 때app/서브페이지/loading.tsx특정 페이지개별 페이지에서만 로딩 UI를 적용할 때loading.tsx 없음없음기본 Next.js 페이지 전환을 사용할 때즉, 전역 로딩이 필요하면 root layout에, 개별 로딩이 필요하면 해당 페이지에 추가하는 게 적절해요! 🚀
질문&답변
Supabase CRUD 하기 또는 REST API화 하기 중 질문이 있습니다.
내부적으로 supabase JS sdk를 사용하면 Postgre의 REST API를 쓰는게 맞습니다.일종의 Wrapper 라이브러리에요.아시다 싶이 .. 클라이언트 사이드에서 직접 DB와 커넥션 하는것은 보안상, 그리고 커넥션 풀의 문제로 절대로 피해야 하는 방식입니다.
질문&답변
Direct connection / Transaction pooler / Session pooler 차이가 무엇인가요?
질문 주셔서 감사합니다. ~강의에서 사용하는 방법은 : Direct connection 방법 입니다.1.DB에 직접 연결하는 전통적인 방식은 Direct connection 입니다.아래와 같은 프로토콜을 따르죠.postgresql://postgres:[PASSWORD]@db.[PROJECT REF].supabase.co:5432/postgres2.근데 위 방식은 max_connections의 제한도 있으니, 확장성에 문제가 있죠.하나의 커넥션(연결 고리를 가지고) 여러 클라이언트가 공유하는 방식 으로 해결가능해요.Transaction Pooler 방식입니다.DB에 작업을 끝내면 다른 사람이 커넥션을 이어 받아, 작업이 가능합니다.Session pooler 는 조금 더 장기적으로 커넥션을 빌려간다라고 생각하면 됩니다. 명확하게는 아래 요약을 참고해주세요.!Direct connection / Transaction pooler / Session pooler 차이점 1. Direct Connection (직접 연결)• 애플리케이션이 PostgreSQL 데이터베이스에 직접 연결하는 방식이에요.• 연결이 많아지면 데이터베이스의 max_connections 제한에 도달할 수 있어요.• 고부하 환경에서는 비효율적일 수 있어요. 2. Transaction Pooler (트랜잭션 풀러)• 여러 클라이언트가 동일한 데이터베이스 연결을 공유하는 방식이에요.• 트랜잭션이 끝나면 즉시 다른 클라이언트가 같은 연결을 사용할 수 있어요.• PostgreSQL의 연결 수를 절약할 수 있어서 대량의 짧은 요청 처리에 유리해요.• Supabase에서 포트 6543을 사용해요.• 단점: 트랜잭션이 끝날 때마다 상태가 초기화되므로, SET 같은 세션 기반 설정은 유지되지 않아요. 3. Session Pooler (세션 풀러)• 하나의 클라이언트가 하나의 연결을 독점적으로 사용하는 방식이에요.• 연결이 유지되는 동안 동일한 클라이언트만 해당 연결을 사용해요.• 트랜잭션이 끝나도 세션 상태(SET 변수 등)가 유지돼요.• Supabase에서 포트 5432를 사용해요.• 단점: 연결을 다른 클라이언트가 즉시 재사용할 수 없어서 비효율적일 수 있어요.요약 비교(사진) 방식연결 공유사용 사례장점단점Direct Connection❌ (없음)낮은 연결 수, 고성능 DB간단한 설정, 세션 유지max_connections 제한 초과 가능Transaction Pooler✅ (트랜잭션 단위)대량의 짧은 요청 처리연결 수 절약세션 상태 유지 불가Session Pooler✅ (세션 단위)장기 실행 쿼리, 세션 유지 필요세션 상태 유지 가능연결 사용 비효율적어떤 방식을 선택할지는 애플리케이션의 특성에 따라 달라요. 짧고 많은 요청이면 트랜잭션 풀러, 세션 유지가 필요하면 세션 풀러, 연결이 적으면 직접 연결이 적합해요. 참고 자료 : https://supabase.com/docs/guides/troubleshooting/supavisor-and-connection-terminology-explained-9pr_ZO
질문&답변
3.2, 3.3 화면에 아무것도 나오지 않고 있습니다!
제가 확인해보니 제 컴퓨터에서는 잘 되고 있습니다. 시스템상 DRM 같은데요. 아래 방법 한번 시도해보세요.!1.듀얼 모니터 제거 후 영상 재생 , ( 맥북,아이패드 등의 사이드카 포함 )2.화면 녹화 프로그램 제거 후 영상 재생 ( 예, OBS )