Skip to content

feat: implement project page#33

Open
rhseung wants to merge 5 commits intogsainfoteam:masterfrom
rhseung:rhseung/project-page
Open

feat: implement project page#33
rhseung wants to merge 5 commits intogsainfoteam:masterfrom
rhseung:rhseung/project-page

Conversation

@rhseung
Copy link
Contributor

@rhseung rhseung commented Feb 19, 2026

Summary by CodeRabbit

새로운 기능

  • 프로젝트 페이지 추가: 반응형 그리드로 여러 프로젝트 카드 표시 및 외부 링크 제공
  • 상단 네비게이션 메뉴에 프로젝트 링크 추가
  • 프로젝트 페이지에 영문 및 한국어 지역화 지원 추가
  • 일관된 다크 테마 디자인 적용(네비게이션 및 푸터 포함)
  • 푸터에 추가 레이블(프로젝트 관련 항목) 반영

@coderabbitai
Copy link

coderabbitai bot commented Feb 19, 2026

No actionable comments were generated in the recent review. 🎉


📝 Walkthrough

Walkthrough

새로운 Projects 페이지를 추가하고, FAQ 컴포넌트들의 기본(default) 내보내기를 명시적(named) 내보내기로 변경하여 배럴(src/pages/faq/index.ts)로 재수출했으며, 내비게이션에 /projects 경로를 추가하고 영어/한국어 지역화 데이터에 프로젝트 관련 키를 추가했습니다.

Changes

Cohort / File(s) Summary
라우팅 및 앱 엔트리
src/App.tsx
FAQ 관련 임포트를 배럴(./pages/faq)로 전환하고 /projects 라우트를 추가하여 Projects 페이지를 렌더링합니다.
FAQ 모듈 (배럴 및 수출 형태 변경)
src/pages/faq/index.ts, src/pages/faq/DetailFaq.tsx, src/pages/faq/FaqList.tsx, src/pages/faq/FaqLayout.tsx
FaqFaqDetail 컴포넌트를 default export → named export로 변경하고, 세 컴포넌트를 index.ts에서 재수출하는 배럴을 추가합니다. (수정 대상: export 방식 변경, 호출부 임포트 경로 변경 필요)
새 페이지 추가
src/pages/projects/index.tsx
Projects 페이지 추가: ProjectCard 컴포넌트, 아이콘 임포트, i18n 번역 사용, 반응형 그리드 및 푸터 포함.
네비게이션 및 레이아웃 소소한 수정
src/components/common/navbar/links.ts, src/components/common/footer/index.tsx
내비게이션의 projects 항목에 "/projects" 링크 추가(링크 속성 확장). 푸터 파일의 불필요한 빈 줄 제거(포맷팅).
지역화(번역) 데이터 추가
src/locales/en-US/main.json, src/locales/ko-KR/main.json
projectsPage 섹션 및 푸터 관련 키(bbun, account, potg) 추가로 프로젝트 이름 및 페이지 타이틀 등 번역 데이터 확장.

Sequence Diagram(s)

sequenceDiagram
  participant User as 사용자
  participant Nav as Navbar
  participant Router as Router
  participant Projects as ProjectsPage
  participant i18n as i18next
  participant Footer as Footer

  User->>Nav: "Projects" 클릭
  Nav->>Router: 경로 전환 /projects
  Router->>Projects: 컴포넌트 마운트
  Projects->>i18n: 번역 키 요청 (projectsPage.title 등)
  i18n-->>Projects: 번역 문자열 반환
  Projects->>Footer: 푸터 렌더링 요청 (dark mode)
  Projects-->>User: Projects 페이지 렌더링 완료
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • [FEATURE] initialized project & completed navbar #2: 동일한 내비게이션 파일(src/components/common/navbar/links.ts)에서 projects 항목을 추가/수정하는 변경과 연관됨.
  • 11 faq page #17: FAQ 컴포넌트들의 export 방식 변경 및 배럴 추가(src/pages/faq/*)와 직접적으로 중복/연관된 변경을 포함함.

Suggested reviewers

  • 2paperstar

Poem

"토끼가 뛰네, 새 페이지 보러,
배럴로 정리하고 링크도 붙였네.
번역도 더하고 카드들 반짝,
프로젝트들 모여 춤을 추네. 🐇✨"

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title "feat: implement project page" accurately and concisely summarizes the main change: implementing a new Projects page with routing, components, and translations.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@src/locales/ko-KR/main.json`:
- Line 112: The translations for the same service are inconsistent: update the
projectsPage.bbun value to match footer.bbun so both keys use the same Korean
phrasing; locate the projectsPage.bbun entry and change "뻔라인 스케이팅" to "뻔라인스케이팅"
(or alternatively make footer.bbun match projectsPage.bbun if you prefer the
spaced form), ensuring projectsPage.bbun and footer.bbun are identical.

In `@src/pages/projects/index.tsx`:
- Around line 12-16: The ProjectCardProps interface uses the type
React.ReactNode but React is not imported; add a React import and adjust the
type accordingly — either add import React from "react" and keep
React.ReactNode, or import { ReactNode } from "react" and change React.ReactNode
to ReactNode; update the interface ProjectCardProps to use the chosen type
(React.ReactNode or ReactNode) so TypeScript stops complaining.

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments