Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
9142527
init: 개발 환경 세팅
lemoncurdyogurt Apr 29, 2025
eec7d80
chore: 리액트 최신버전으로 재설치
lemoncurdyogurt Apr 29, 2025
ab26d01
environment: 개발환경 초기 세팅
chaeyoungwon Apr 29, 2025
d0b835d
fix: package.json 충돌 해결
chaeyoungwon Apr 29, 2025
fce5f65
fix: 병합 오류 수정
chaeyoungwon Apr 29, 2025
628f15b
chore: PR template 추가
chaeyoungwon Apr 30, 2025
fd25f5a
chore: svgr/webpack 설치 및 svg 컴포넌트 설정 추가
chaeyoungwon Apr 30, 2025
c20d1c7
chore: TMDB API base URL과 axios instance 설정
lemoncurdyogurt May 1, 2025
fc0f987
feat: 영화 상세 페이지 형태만 만들어 놓음
lemoncurdyogurt May 1, 2025
6e34a8c
remove: 불필요한 이미지파일 삭제
lemoncurdyogurt May 1, 2025
cfb0f80
feat: tmdb 설정 및 trendingMovie및 TV 데이터 가져오기
lemoncurdyogurt May 1, 2025
eb2a00e
Merge branch 'sujin'
lemoncurdyogurt May 1, 2025
b08f08e
chore: icon assets 다운로드
lemoncurdyogurt May 5, 2025
293bf4b
chore: svgr/webpack 의존성 설치
lemoncurdyogurt May 5, 2025
807a46c
feat: swiper 추가
lemoncurdyogurt May 5, 2025
cba6326
feat: 헤더/navbar 구현 및 NotFound 페이지 구현
chaeyoungwon May 5, 2025
55b6e09
chore: svg 폴더 내 header 폴더 생성
chaeyoungwon May 5, 2025
4f708db
refactor: navItems 파일 분리
chaeyoungwon May 5, 2025
2f36d04
feat: 넷플릭스 파비콘 추가
chaeyoungwon May 5, 2025
99b2871
Merge pull request #1 from suyoungSwim/chaeyoung
chaeyoungwon May 5, 2025
bf8079c
feat: swiper추가
lemoncurdyogurt May 6, 2025
eff9131
merge: merge with master
lemoncurdyogurt May 6, 2025
2a852a4
rename: icon명 수정
lemoncurdyogurt May 6, 2025
f29a51e
refactor: 함수 작성 법 통일
lemoncurdyogurt May 6, 2025
6842b43
feat: 넷플릭스 랜딩페이지 구현
chaeyoungwon May 6, 2025
10e634f
remove: 불필요한 라이브러리 삭제
chaeyoungwon May 6, 2025
a97dd87
fix: 콘솔 오류 해결
chaeyoungwon May 6, 2025
0ff9dbd
Merge: pull request from chaeyoung
lemoncurdyogurt May 6, 2025
c328b93
feat: 장르별 영화 가져오기
lemoncurdyogurt May 7, 2025
50a1599
Merge branch 'master' of https://github.com/lemoncurdyogurt/next-netf…
lemoncurdyogurt May 7, 2025
dcf55f8
feat: getKoreaMovie, getMoviePopular, getOriginalNetflix 관련 api 작성
lemoncurdyogurt May 7, 2025
cbd9c44
feat: Netflix Original 추가
lemoncurdyogurt May 7, 2025
3916ce2
fix: heroslider 스와이퍼 디자인 수정 및 slide 방향 수정
chaeyoungwon May 7, 2025
afa82eb
fix: lottie SSR 오류 해결 및 gradient 수정
chaeyoungwon May 8, 2025
293d77a
feat: 한국영화 가져오기
lemoncurdyogurt May 8, 2025
32b4387
fix: HeroSlider 사진 가져올 때 이미지 최적화 로딩 경고 수정
lemoncurdyogurt May 8, 2025
a71fbb0
fix: lottie player ssr 비활성화
lemoncurdyogurt May 8, 2025
fd75ff3
fix: korea movie api data 반환 오류
lemoncurdyogurt May 8, 2025
0a4bb6b
feat: koreaMovie 홈화면에 컴포넌트 추가
lemoncurdyogurt May 8, 2025
3a0e9fe
chore: lottie 다운
lemoncurdyogurt May 8, 2025
1f7d07f
chore: 콘솔문 제거
lemoncurdyogurt May 8, 2025
535cf3d
feat: preview 보여주기
lemoncurdyogurt May 8, 2025
2ee8861
design: 가로 스크롤바 제거, 마우스 포인터로 잡고 넘길 수 있게, 무한 반복 기능 추가
lemoncurdyogurt May 8, 2025
3e3b9dd
Merge pull request #5 from suyoungSwim/chaeyoung
lemoncurdyogurt May 8, 2025
18e357e
merge: merge with master
lemoncurdyogurt May 8, 2025
1a2771d
design: padding 16px 적용
lemoncurdyogurt May 8, 2025
a18347e
design: 홈 화면 컴포넌트 UI 디테일 수정
chaeyoungwon May 9, 2025
44a4271
design: swiper 오른쪽 여백 안생기도록 수정
chaeyoungwon May 9, 2025
55bf4d9
style: 스타일 시스템 추가 및 적용
chaeyoungwon May 9, 2025
7bfef6c
style: 스타일 시스템 수정
chaeyoungwon May 9, 2025
13131cb
style: 스타일 시스템 오타 수정
chaeyoungwon May 9, 2025
1031e31
Merge pull request #4 from suyoungSwim/sujin
chaeyoungwon May 9, 2025
633ae46
chore: build.sh 파일 추가
chaeyoungwon May 9, 2025
7137b71
Merge pull request #6 from suyoungSwim/chaeyoung
chaeyoungwon May 9, 2025
69f3994
chore: deploy.yml 파일 추가
chaeyoungwon May 9, 2025
56c036a
fix: 따옴표 &apos로 수정
chaeyoungwon May 9, 2025
a5c4096
fix: async 오류 해결
chaeyoungwon May 9, 2025
82522cd
fix: 상세페이지 빈화면으로 전환하여 오류 해결
chaeyoungwon May 9, 2025
79348b8
remove: 불필요한 svg 파일 삭제
chaeyoungwon May 9, 2025
0461ab8
refactor: swiper 부분 컴포넌트로 분리
chaeyoungwon May 9, 2025
d076e53
Merge pull request #7 from suyoungSwim/chaeyoung
chaeyoungwon May 9, 2025
25143c5
chore: git-push.yml 추가
chaeyoungwon May 9, 2025
18fd981
chore: git-push.yml 추가
chaeyoungwon May 9, 2025
1701444
remove: yml 위치 수정 후 디렉토리 제거
chaeyoungwon May 9, 2025
a1bc443
design: BannerOption추가 후, preview 텍스트와 겹치는 현상 해결
lemoncurdyogurt May 9, 2025
ba61f8b
chore: git-push.yml 수정
chaeyoungwon May 9, 2025
dd69049
feat: bannerOption추가
lemoncurdyogurt May 9, 2025
e306f72
Merge branch 'master' of https://github.com/lemoncurdyogurt/next-netf…
lemoncurdyogurt May 9, 2025
ea2fd7c
fix: preview padding top 수정
lemoncurdyogurt May 9, 2025
2838b28
design: hover 색상 추가
lemoncurdyogurt May 9, 2025
e11d293
fix: global css hover선언 문제 해결
lemoncurdyogurt May 9, 2025
6e2d0a6
refactor: 글로벌스타일 지정 색상명 으로 변경
lemoncurdyogurt May 9, 2025
81653a1
design: banner option 디자인 수정
chaeyoungwon May 9, 2025
eb0f40a
refactor: 글로벌스타일로 글씨폰트 변경
lemoncurdyogurt May 9, 2025
5b2c069
merge: 채영이랑 코드 머지
lemoncurdyogurt May 9, 2025
df22cf4
feat: 스켈레톤 ui 적용
lemoncurdyogurt May 9, 2025
9c05787
refactor: 스켈레톤 ui 부분 수정
lemoncurdyogurt May 9, 2025
1b979ec
chore: 배포 url 추가
chaeyoungwon May 9, 2025
2c7447a
chore: 중복 코드 삭제
chaeyoungwon May 10, 2025
33667af
refactor: 전반적인 코드 리팩토링
chaeyoungwon May 10, 2025
a33f5be
refactor: import 정렬 플러그인 설치 및 적용
chaeyoungwon May 10, 2025
c36ff58
design: scrollbar-hide 적용
lemoncurdyogurt May 12, 2025
444bf60
refactor: type 선언 overview 중복 제거
lemoncurdyogurt May 12, 2025
1d29f31
refactor: clsx로 조건부 클래스 사용
lemoncurdyogurt May 12, 2025
b6434f2
chore: 파일 위치 변경
lemoncurdyogurt May 12, 2025
cb7ffb9
Merge pull request #9 from suyoungSwim/sujin
lemoncurdyogurt May 12, 2025
8674143
feat: 검색 시 영화와 티비프로그램 가져오는 api 가져오기
lemoncurdyogurt May 12, 2025
8458acd
Merge branch 'master' of https://github.com/lemoncurdyogurt/next-netf…
lemoncurdyogurt May 12, 2025
a1611e1
refactor: prettier-plugin-tailwindcss 설치 및 글로벌 텍스트 스타일 text-* 형식으로 통일
chaeyoungwon May 12, 2025
1369c3b
feat: 검색 바 UI 구현
chaeyoungwon May 12, 2025
83bcc09
feat: 입력창으로 검색 결과 가져오기 구현
chaeyoungwon May 12, 2025
ad31cf2
feat: 무한 스크롤 및 검색 카드 스켈레톤 UI 추가
chaeyoungwon May 12, 2025
e1adf4a
feat: throttle 기반 무한 스크롤 기능 추가 및 debounce hook 적용
chaeyoungwon May 12, 2025
cb7819b
refactor: 공통 타입 사용 및 코드리뷰 보완
chaeyoungwon May 12, 2025
d4b929a
refactor: api 함수 수정
lemoncurdyogurt May 13, 2025
3548740
refactor: 코드리뷰 기반 리팩토링
chaeyoungwon May 13, 2025
4ba9f01
remove: 불필요한 error 예외처리 삭제
lemoncurdyogurt May 13, 2025
b0a19fa
refactor: 코드리뷰 기반 코드 수정
lemoncurdyogurt May 14, 2025
389e296
Merge pull request #10 from suyoungSwim/chaeyoung
chaeyoungwon May 14, 2025
405cdfd
Merge pull request #11 from suyoungSwim/sujin
chaeyoungwon May 14, 2025
c9df19a
detail가져오는거에 대한 api, 타입 선언
lemoncurdyogurt May 15, 2025
fb8e5e5
feat: 상세페이지 제작
lemoncurdyogurt May 15, 2025
e54fb1d
feat: detail 링크 추가
lemoncurdyogurt May 15, 2025
e5089f5
test: 콘솔 로그 제거
lemoncurdyogurt May 15, 2025
ad26f2f
refactor: 상세 페이지 디자인 수정 및 코드리뷰 반영
chaeyoungwon May 17, 2025
0d341b4
feat: 검색 컴포넌트에도 상세 페이지 연결 추가
chaeyoungwon May 17, 2025
a6d1dd8
Merge branch 'master' into sujin
chaeyoungwon May 17, 2025
cfddc82
Merge pull request #12 from suyoungSwim/sujin
chaeyoungwon May 17, 2025
a5770d6
fix: 배포 에러 해결
chaeyoungwon May 17, 2025
a2eb8ad
fix: 배포 에러 해결
chaeyoungwon May 17, 2025
19a4b28
fix: throttle any 오류 해결
chaeyoungwon May 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions next-netflix-21th/.github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
### 🔥 작업 내용

- (개발한 내용을 상세히 적어주세요.)

### 🤔 추후 작업 사항

-

### 📸 작업 내역 스크린샷

-

### 🔗 이슈

- 링크
48 changes: 48 additions & 0 deletions next-netflix-21th/.github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Deploy

on:
push:
branches: ["master"]

jobs:
build:
runs-on: ubuntu-latest

container: pandoc/latex

steps:
- uses: actions/checkout@v2

- name: Install mustache (to update the date)

run: apk add ruby && gem install mustache

- name: creates output

run: sh ./build.sh

- name: Pushes to another repository

id: push_directory

uses: cpina/github-action-push-to-another-repository@main

env:
API_TOKEN_GITHUB: ${{ secrets.AUTO_ACTIONS }}

with:
source-directory: "output"

destination-github-username: chaeyoungwon

destination-repository-name: next-netflix-21th

user-email: ${{ secrets.EMAIL }}

commit-message: ${{ github.event.commits[0].message }}

target-branch: master

- name: Test get variable exported by push-to-another-repository

run: echo $DESTINATION_CLONED_DIRECTORY
30 changes: 30 additions & 0 deletions next-netflix-21th/.github/workflows/git-push.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Deploy

on:
push:
branches: [master]

jobs:
build:
runs-on: ubuntu-latest
container: pandoc/latex
steps:
- uses: actions/checkout@v2
- name: Install mustache (to update the date)
run: apk add ruby && gem install mustache
- name: creates output
run: sh ./build.sh
- name: Pushes to another repository
id: push_directory
uses: cpina/github-action-push-to-another-repository@main
env:
API_TOKEN_GITHUB: ${{ secrets.AUTO_ACTIONS }}
with:
source-directory: 'output'
destination-github-username: chaeyoungwon
destination-repository-name: next-netflix-21th
user-email: ${{ secrets.EMAIL }}
commit-message: ${{ github.event.commits[0].message }}
target-branch: master
- name: Test get variable exported by push-to-another-repository
run: echo $DESTINATION_CLONED_DIRECTORY
41 changes: 41 additions & 0 deletions next-netflix-21th/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files (can opt-in for committing if needed)
.env*

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
30 changes: 30 additions & 0 deletions next-netflix-21th/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"plugins": [
"@trivago/prettier-plugin-sort-imports",
"prettier-plugin-tailwindcss"
],
"printWidth": 80,
"semi": true,
"singleQuote": false,
"trailingComma": "all",
"tabWidth": 2,
"bracketSpacing": true,
"endOfLine": "auto",
"useTabs": false,
"arrowParens": "avoid",
"importOrder": [
"^next",
"^react",
"<THIRD_PARTY_MODULES>",
"^@/apis/(.*)$",
"^@/hooks/(.*)$",
"^@/utils/(.*)$",
"^@/components/(.*)$",
"^@/constants/(.*)$",
"^@/types/(.*)$",
"^@/public/(.*)$",
"^[./]"
],
"importOrderSeparation": true,
"importOrderSortSpecifiers": true
}
36 changes: 36 additions & 0 deletions next-netflix-21th/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).

## Getting Started

First, run the development server:

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.

This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.

## Learn More

To learn more about Next.js, take a look at the following resources:

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!

## Deploy on Vercel

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
7 changes: 7 additions & 0 deletions next-netflix-21th/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

#!/bin/sh

cd ../
mkdir output
cp -R ./next-netflix-21th/* ./output
cp -R ./output ./next-netflix-21th/
5 changes: 5 additions & 0 deletions next-netflix-21th/custom.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
declare module "*.svg" {
import React from "react";
const svg: React.FC<React.SVGProps<SVGSVGElement>>;
export default svg;
}
16 changes: 16 additions & 0 deletions next-netflix-21th/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { FlatCompat } from "@eslint/eslintrc";
import { dirname } from "path";
import { fileURLToPath } from "url";

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

const compat = new FlatCompat({
baseDirectory: __dirname,
});

const eslintConfig = [
...compat.extends("next/core-web-vitals", "next/typescript"),
];

export default eslintConfig;
25 changes: 25 additions & 0 deletions next-netflix-21th/next.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import type { NextConfig } from "next";

const nextConfig: NextConfig = {
webpack: (config: any) => {
config.module.rules.push({
test: /\.svg$/i,
issuer: /\.[jt]sx?$/,
use: ["@svgr/webpack"],
});
return config;
},
turbopack: {
rules: {
"*.svg": {
loaders: ["@svgr/webpack"],
as: "*.ts",
},
},
},
images: {
domains: ["image.tmdb.org"], // 외부 이미지 도메인 추가
},
};

export default nextConfig;
37 changes: 37 additions & 0 deletions next-netflix-21th/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"name": "next-netflix-21th",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev --turbopack",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"axios": "^1.9.0",
"clsx": "^2.1.1",
"lottie-react": "^2.4.1",
"next": "^15.3.1",
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-lottie-player": "^2.1.0",
"swiper": "^11.2.6"
},
"devDependencies": {
"@eslint/eslintrc": "^3",
"@svgr/webpack": "^8.1.0",
"@tailwindcss/postcss": "^4",
"@trivago/prettier-plugin-sort-imports": "^5.2.2",
"@types/node": "^20",
"@types/react": "^19",
"@types/react-dom": "^19",
"eslint": "^9.25.1",
"eslint-config-next": "15.3.1",
"eslint-config-prettier": "^10.1.2",
"eslint-plugin-prettier": "^5.2.6",
"prettier-plugin-tailwindcss": "^0.6.11",
"tailwindcss": "^4",
"typescript": "^5"
}
}
5 changes: 5 additions & 0 deletions next-netflix-21th/postcss.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
const config = {
plugins: ["@tailwindcss/postcss"],
};

export default config;
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions next-netflix-21th/public/icons/bottomNavBar/DownloadIcon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions next-netflix-21th/public/icons/bottomNavBar/HomeIcon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions next-netflix-21th/public/icons/bottomNavBar/MoreIcon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions next-netflix-21th/public/icons/bottomNavBar/SearchIcon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading