-
Notifications
You must be signed in to change notification settings - Fork 39
[이상달] sprint11 #247
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
addiescode-sj
merged 47 commits into
codeit-bootcamp-frontend:React-이상달
from
asksa1256:Next-이상달-sprint11
Sep 18, 2025
The head ref may contain hidden characters: "Next-\uC774\uC0C1\uB2EC-sprint11"
Merged
[이상달] sprint11 #247
Changes from 35 commits
Commits
Show all changes
47 commits
Select commit
Hold shift + click to select a range
87e3f15
chore: 머지 후 브랜치 삭제 github action 추가
withyj-codeit 1472169
Initial commit from Create Next App
withyj-codeit 671d4d5
reset
hanseulhee 14baca2
fix: 머지 후 브랜치 삭제 github action 수정
hanseulhee 8d163dd
env: workflows 폴더로 이동
hanseulhee ee44005
reset
hanseulhee 0e691e3
env: workflows 폴더로 이동
hanseulhee 390a068
feat: Header 추가, Boards 페이지 세팅
asksa1256 1002016
style: 반응형 스타일 테일윈드로 마이그레이션
asksa1256 4b8cfd6
refactor: pages router로 변경
asksa1256 8c9c027
chore: auth 페이지 리라이트
asksa1256 bdfaf46
chore: clsx, react-hook-form 패키지 설치
asksa1256 87cb587
chore: 로그인 페이지 마이그레이션 (react -> next)
asksa1256 06fabd3
style: 랜딩 페이지 퍼블리싱
asksa1256 a6ea937
feat: header - 로그인 버튼 추가
asksa1256 202ace1
style: 로그인 페이지 퍼블리싱
asksa1256 b8c10ab
fix: footer sns icon 이미지 import 수정
asksa1256 e9a2f03
feat: 로그인 폼 유효성 검사 추가
asksa1256 f294cb3
feat: 로그인 api 연동 + user 전역 상태 저장 + 토큰 쿠키로 저장
asksa1256 a44fcc3
feat: 로그인 시 로그인, 회원가입 접근 - 메인으로 리디렉션
asksa1256 802fe16
feat: 헤더 - accessToken 여부에 따라 로그인/프로필 이미지 조건부 렌더링
asksa1256 269de3c
feat: 헤더 - 아바타 클릭 시 드롭다운 메뉴 토글
asksa1256 a9b27d5
feat: 로그아웃 시 쿠키 삭제
asksa1256 fffc7a1
chore: use client 선언 제거
asksa1256 d771255
chore: 필요없는 파일 삭제
asksa1256 5d9cdb4
feat: 회원가입 폼 유효성 검사
asksa1256 2357563
feat: 회원가입 api 연동
asksa1256 4b82fd0
feat: axios interceptor - 401 권한 에러시 토큰 재발급 설정
asksa1256 3470635
fix: 회원가입 성공 시 라우팅 수정 및 쿠키 저장 로직 제거
asksa1256 9ddfc28
chore: vercel 배포 브랜치 변경용 push
asksa1256 13d67fb
fix: vercel 배포 에러 - eslint dependency 설치
asksa1256 135f147
fix: vercel 빌드 에러 수정 - eslint-config-next 추가
asksa1256 1432ce4
fix: next config export 코드 수정
asksa1256 5c6a50e
chore: 안 쓰는 파일 제거
asksa1256 1ea0918
Merge branch 'React-이상달' into Next-이상달-sprint11
asksa1256 6f67a68
refactor: Banner loading prop 수정
asksa1256 2539798
fix: MainSection imgAlt값 추가
asksa1256 a1a67a1
refactor: BannerProps에서 BannerImage 타입 분리
asksa1256 b634a61
refactor: ImageType 분리 및 적용
asksa1256 c7bf0f1
refactor: SocialLoginButton ImageType 적용
asksa1256 0459e9e
refactor: Layout 분리 구조 변경
asksa1256 1cb67f9
refactor: LoginForm 리액트 쿼리 제거 → fetch 요청 + 스토리지 저장 방식만 사용
asksa1256 8750a61
chore: 환경변수 타입 수정
asksa1256 cf1c2dc
refactor: 회원가입 폼 - 리액트 쿼리 제거 → fetch
asksa1256 c4f4f65
refactor: 로그인 처리 로직 커스텀 훅 생성 (useSignIn)
asksa1256 e8dac58
chore: 중복 헤더 파일 제거
asksa1256 2000956
fix: 커스텀 훅에서 zustand 훅 사용 에러 수정 (useAuthStore getState로 수정)
asksa1256 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| { | ||
| "extends": "next/core-web-vitals" | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,70 +1,40 @@ | ||
| # Getting Started with Create React App | ||
| This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). | ||
|
|
||
| This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). | ||
| ## Getting Started | ||
|
|
||
| ## Available Scripts | ||
| First, run the development server: | ||
|
|
||
| In the project directory, you can run: | ||
| ```bash | ||
| npm run dev | ||
| # or | ||
| yarn dev | ||
| # or | ||
| pnpm dev | ||
| # or | ||
| bun dev | ||
| ``` | ||
|
|
||
| ### `npm start` | ||
| Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. | ||
|
|
||
| Runs the app in the development mode.\ | ||
| Open [http://localhost:3000](http://localhost:3000) to view it in your browser. | ||
| You can start editing the page by modifying `pages/index.tsx`. The page auto-updates as you edit the file. | ||
|
|
||
| The page will reload when you make changes.\ | ||
| You may also see any lint errors in the console. | ||
| [API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`. | ||
|
|
||
| ### `npm test` | ||
| The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. | ||
|
|
||
| Launches the test runner in the interactive watch mode.\ | ||
| See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. | ||
|
|
||
| ### `npm run build` | ||
|
|
||
| Builds the app for production to the `build` folder.\ | ||
| It correctly bundles React in production mode and optimizes the build for the best performance. | ||
|
|
||
| The build is minified and the filenames include the hashes.\ | ||
| Your app is ready to be deployed! | ||
|
|
||
| See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. | ||
|
|
||
| ### `npm run eject` | ||
|
|
||
| **Note: this is a one-way operation. Once you `eject`, you can't go back!** | ||
|
|
||
| If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. | ||
|
|
||
| Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own. | ||
|
|
||
| You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it. | ||
| This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. | ||
|
|
||
| ## Learn More | ||
|
|
||
| You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). | ||
|
|
||
| To learn React, check out the [React documentation](https://reactjs.org/). | ||
|
|
||
| ### Code Splitting | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting) | ||
|
|
||
| ### Analyzing the Bundle Size | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size) | ||
|
|
||
| ### Making a Progressive Web App | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app) | ||
|
|
||
| ### Advanced Configuration | ||
| To learn more about Next.js, take a look at the following resources: | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration) | ||
| - [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. | ||
|
|
||
| ### Deployment | ||
| You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment) | ||
| ## Deploy on Vercel | ||
|
|
||
| ### `npm run build` fails to minify | ||
| 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. | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify) | ||
| Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. |
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,25 @@ | ||
| import localFont from "next/font/local"; | ||
|
|
||
| const pretendard = localFont({ | ||
| src: [ | ||
| { | ||
| path: "./Pretendard-Regular.woff2", | ||
| weight: "400", | ||
| style: "normal", | ||
| }, | ||
| { | ||
| path: "./Pretendard-Medium.woff2", | ||
| weight: "500", | ||
| style: "normal", | ||
| }, | ||
| { | ||
| path: "./Pretendard-Bold.woff2", | ||
| weight: "700", | ||
| style: "normal", | ||
| }, | ||
| ], | ||
| variable: "--font-pretendard", | ||
| display: "swap", | ||
| }); | ||
|
|
||
| export default pretendard; |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| import { MouseEvent } from "react"; | ||
| import Image from "next/image"; | ||
|
|
||
| interface AvatarProps { | ||
| imgSrc: string; | ||
| className?: string; | ||
| onClick?: (e: MouseEvent<HTMLButtonElement>) => void; | ||
| } | ||
|
|
||
| const Avatar = ({ imgSrc, className, onClick }: AvatarProps) => { | ||
| return ( | ||
| <button className={className} onClick={onClick}> | ||
| <Image src={imgSrc} alt="프로필 이미지" width="40" height="40" /> | ||
| </button> | ||
| ); | ||
| }; | ||
|
|
||
| export default Avatar; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,62 @@ | ||
| import { ReactNode } from "react"; | ||
| import { StaticImageData } from "next/image"; | ||
| import Button from "@/components/ui/Button"; | ||
| import { useRouter } from "next/navigation"; | ||
| import Image from "next/image"; | ||
|
|
||
| interface BannerProps { | ||
| title: string | ReactNode; | ||
| imgSrc: string | StaticImageData; | ||
| imgAlt: string; | ||
| linkTo?: string; | ||
| ariaLabel?: string; | ||
| lazyLoading?: boolean; | ||
| } | ||
|
|
||
| const Banner = ({ | ||
| title, | ||
| linkTo, | ||
| imgSrc, | ||
| imgAlt, | ||
| ariaLabel, | ||
| lazyLoading, | ||
| }: BannerProps) => { | ||
| const router = useRouter(); | ||
|
|
||
| return ( | ||
| <article | ||
| className="min-h-[540px] bg-primary-light text-gray-700 text-center" | ||
| aria-label={ariaLabel} | ||
| > | ||
| <div className="flex flex-col justify-between h-full min-h-[540px]"> | ||
| <div className="pt-[120px] md:pt-[84px] md:px-0 md:pb-[210px] md:max-w-none lg:items-start lg:pb-24"> | ||
| <h2 className="text-fluid mb-[18px] md:mb-6 lg:mb-8 break-keep font-bold"> | ||
| {title} | ||
| </h2> | ||
| {linkTo && ( | ||
| <Button | ||
| onClick={() => router.push(linkTo)} | ||
| aria-label="상품 페이지로 이동" | ||
| variant="primary" | ||
| size="lg" | ||
| shape="round" | ||
| className="px-[70px] md:px-[124px]" | ||
| > | ||
| 구경하러 가기 | ||
| </Button> | ||
| )} | ||
| </div> | ||
| <Image | ||
| className="w-full max-w-[744px] my-0 mx-auto" | ||
| loading={lazyLoading ? "lazy" : "eager"} | ||
asksa1256 marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| src={imgSrc} | ||
| alt={imgAlt} | ||
| width={746} | ||
| height={340} | ||
| /> | ||
| </div> | ||
| </article> | ||
| ); | ||
| }; | ||
|
|
||
| export default Banner; | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.