Skip to content

[D2C-36] 회원가입 & 로그인 인증 흐름 main 통합#11

Merged
jjunier merged 4 commits into
mainfrom
develop
May 12, 2026
Merged

[D2C-36] 회원가입 & 로그인 인증 흐름 main 통합#11
jjunier merged 4 commits into
mainfrom
develop

Conversation

@jjunier
Copy link
Copy Markdown
Member

@jjunier jjunier commented May 12, 2026

개요

본 PR은 develop 브랜치에 병합된 D2C-35, D2C-36 회원가입 및 로그인 인증 흐름 구현 결과를 main 브랜치에 반영하기 위한 PR입니다.

D2C-35에서는 사용자가 회원가입을 통해 계정을 생성하고, 회원가입 성공 후 프론트엔드 로그인 상태로 전환되는 흐름을 구현했습니다.

D2C-36에서는 기존 사용자가 로그인 화면에서 계정 정보를 입력하고, 로그인 성공 후 사용자 상태를 저장하여 헤더와 주요 사용자 흐름에 반영되도록 구현했습니다.

본 PR에서는 develop에서 검증된 회원가입, 로그인, 사용자 상태 저장, 인증 상태 기반 페이지 접근 제어 흐름을 main에 병합하여 Sprint 2 프론트엔드 인증 기능 기준점을 정리합니다.


포함 범위

D2C-35 회원가입 화면 및 사용자 생성 흐름 구현

  • 회원가입 페이지 UI 구성
  • 이름 / 이메일 / 비밀번호 / 마케팅 정보 수신 동의 입력 구현
  • 회원가입 입력값 기본 검증
  • POST /auth/signup API client 추가
  • 회원가입 요청 타입 및 인증 사용자 타입 추가
  • 회원가입 성공/실패 피드백 메시지 표시
  • 회원가입 성공 시 생성된 사용자 정보를 localStorage에 저장
  • 회원가입 성공 후 /products 이동 처리
  • 사용자 상태 변경 이벤트 추가
  • MainLayout에서 사용자 상태 변경 이벤트 구독
  • 회원가입 성공 후 헤더가 로그인 상태로 즉시 변경되도록 반영
  • 로그인 상태에서 /signup 직접 접근 시 /products로 redirect
  • 로그아웃 시 사용자 정보 및 장바구니 식별자 제거
  • PR 작성자 자동 Assignee workflow 추가

D2C-36 로그인 화면 및 사용자 상태 저장 흐름 구현

  • 로그인 페이지 UI 구성
  • 이메일 / 비밀번호 입력 구현
  • 로그인 입력값 기본 검증
  • POST /auth/login API client 추가
  • 로그인 요청 타입 추가
  • 로그인 성공/실패 피드백 메시지 표시
  • 로그인 성공 시 사용자 정보를 localStorage에 저장
  • 로그인 성공 후 /products 이동 처리
  • 로그인 성공 후 헤더가 로그인 상태로 즉시 변경되도록 반영
  • 로그인 상태에서 /login 직접 접근 시 /products로 redirect
  • 로그아웃 시 비로그인 메뉴로 복귀 확인
  • D2C-35에서 구성한 공통 인증 화면 스타일 재사용

검증 결과

develop 브랜치 기준으로 프론트엔드 타입 체크를 실행하여 정상 통과를 확인했습니다.

cd apps/web
npm run typecheck

프론트엔드 빌드를 실행하여 정상 통과를 확인했습니다.

cd apps/web
npm run build

프론트엔드 개발 서버와 백엔드 서버를 함께 실행하여 회원가입/로그인 인증 흐름을 수동 확인했습니다.

cd apps/api
uvicorn backend.main:app --reload
cd apps/web
npm run dev

수동 확인 항목:

  • http://localhost:5173/signup 접속 확인
  • 비로그인 상태에서 회원가입 화면 접근 가능 확인
  • 회원가입 입력값 검증 메시지 표시 확인
  • 정상 회원가입 시 회원가입 API 호출 확인
  • 회원가입 성공 후 localStorage에 d2c_user 저장 확인
  • 회원가입 성공 후 /products 이동 확인
  • 회원가입 성공 후 헤더가 로그인 상태로 변경되는 것 확인
  • 로그인 상태에서 /signup 직접 접근 시 /products로 redirect 확인
  • http://localhost:5173/login 접속 확인
  • 비로그인 상태에서 로그인 화면 접근 가능 확인
  • 로그인 입력값 검증 메시지 표시 확인
  • 잘못된 계정 정보 제출 시 실패 메시지 표시 확인
  • 정상 계정 정보 입력 시 로그인 API 호출 확인
  • 로그인 성공 후 localStorage에 d2c_user 저장 확인
  • 로그인 성공 후 /products 이동 확인
  • 로그인 성공 후 헤더가 로그인 상태로 변경되는 것 확인
  • 로그인 상태에서 /login 직접 접근 시 /products로 redirect 확인
  • 로그아웃 시 비로그인 메뉴로 복귀 확인

브랜치 통합 방식

이번 PR의 통합 흐름은 아래와 같습니다.

feature/D2C-35-signup-user-flow
→ develop

feature/D2C-36-login-user-state-flow
→ develop

develop
→ main

main 병합 후에는 회원가입, 로그인, 사용자 상태 저장, 인증 상태 기반 페이지 접근 제어 흐름이 배포 기준 브랜치에 반영됩니다.


향후 브랜치 운영 원칙

Sprint 2에서는 아래 브랜치 운영 원칙을 유지합니다.

  • Jira 이슈키별 독립 feature 브랜치 생성
  • 각 feature 브랜치는 develop에서 분기
  • 작업 완료 후 develop으로 개별 PR 생성
  • PR 단위로 CI 검증 후 병합
  • 의미 있는 사용자 흐름 단위가 완료되면 developmain에 병합
  • main은 배포 기준 브랜치로 유지
  • 기능 작업이 누적된 장기 브랜치는 지양

체크리스트

  • D2C-35 브랜치를 develop에 병합
  • D2C-36 브랜치를 develop에 병합
  • 회원가입 화면 및 사용자 생성 흐름 포함
  • 로그인 화면 및 사용자 상태 저장 흐름 포함
  • 회원가입/로그인 성공 후 헤더 상태 반영 포함
  • /signup, /login 인증 상태 기반 접근 제한 포함
  • 로그아웃 시 사용자 상태 초기화 확인
  • PR 작성자 자동 Assignee workflow 포함
  • develop 기준 프론트엔드 typecheck / build / dev 확인
  • .env, node_modules, dist, cache 파일이 커밋에 포함되지 않도록 확인
  • main 병합 완료
  • main 기준 최종 확인

jjunier added 4 commits May 12, 2026 14:28
- add signup API client and auth user types
- implement signup form with validation and submission feedback
- persist created user in localStorage after successful signup
- sync header state when user storage changes
- redirect signed-up users to product catalog page
- prevent signed-in users from accessing the signup page
- add PR auto-assignment workflow for pull request authors
…r-flow

[D2C-35] 회원가입 화면 및 사용자 생성 흐름 구현
- add login request type and login API client
- implement login form with validation and submission feedback
- persist logged-in user in localStorage after successful login
- redirect authenticated users away from the login page
- reuse auth layout and header state synchronization from signup flow
…r-state-flow

[D2C-36] 로그인 화면 및 사용자 상태 저장 흐름 구현
@jjunier jjunier self-assigned this May 12, 2026
@jjunier jjunier added the enhancement New feature or request label May 12, 2026
@jjunier jjunier merged commit 76218ca into main May 12, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant