Skip to content

feat: 데스크톱 최적화 레이아웃 적용 - #576

Draft
manNomi wants to merge 32 commits into
mainfrom
feat/desktop-mode-poc
Draft

manNomi wants to merge 32 commits into
mainfrom
feat/desktop-mode-poc

Conversation

@manNomi

@manNomi manNomi commented Jun 24, 2026 •

Copy link
Copy Markdown
Contributor

관련 이슈

작업 내용

  • 홈과 학교 탐색 및 상세 화면에 데스크톱 배치를 추가했습니다. 로그인과 회원가입 및 마이페이지와 커뮤니티 및 멘토링에도 데스크톱 화면을 적용했습니다.
  • 학교 목록은 1280px부터 필터와 결과를 나란히 표시합니다. 그보다 좁은 데스크톱 화면에서는 필터를 위에 배치합니다. 카드 열 수는 실제 결과 영역의 너비에 맞춰 정합니다. 초기 렌더링 화면에도 같은 규칙을 적용하고 모바일 목록의 가상화는 유지했습니다.
  • 최신 main을 일반 병합하고 충돌을 해결했습니다. 데스크톱 메뉴와 모바일 배치를 유지하면서 AI 인스펙터 및 웹 캐시 무효화 API 제거를 반영했습니다. 애플 로그인은 최신 SDK 지연 로딩과 오류 안내 및 재시도를 유지하고 화면별 버튼 여백을 연결했습니다.
  • 홈 요청의 병렬 처리와 전달 데이터 축소를 유지했습니다. 데스크톱 학교 수와 국가 수 및 소속 대학별 학교 수는 서버에서 집계합니다. 전체 목록 미리보기는 필요한 필드만 최대 6개 전달합니다.
  • 대학 카탈로그의 별도 앱 이동 경로와 서버 조회 실패 시 브라우저 복구를 유지했습니다. 상세 복구 후에도 소속 대학 목록으로 돌아갈 수 있습니다.
  • 모바일과 데스크톱의 접근 조건 및 성적과 지원서 제출 중 중복 요청 방지를 유지했습니다.

검증

  • Node 22.20.0과 pnpm 9에서 전체 pnpm ci:check의 13개 작업이 통과했습니다. 타입 검사와 코드 품질 검사 및 대학 앱 이동 경로 검사를 포함합니다.
  • 저장소의 커밋 훅과 push 훅 검사를 통과했습니다. Web과 University Web 및 Admin의 프로덕션 빌드가 통과했습니다.
  • 로컬 읽기 전용 예시 API에 학교 144개를 구성했습니다. 소속 대학마다 48개이며 긴 학교명과 어학 조건 3개를 포함합니다.
  • 학교 목록을 390px과 767px 및 768px과 1024px 및 1280px과 1440px에서 확인했습니다. 페이지 가로 넘침이 없고 768px에서 학교명 표시 공간이 사라지던 문제가 해소됐습니다.
  • 텍스트 검색과 빈 결과 및 권역 필터와 필터 초기화를 확인했습니다. 조건 검색에서 목록으로 이동한 뒤 새로고침해도 검색어가 유지됩니다.
  • 모바일에서 마지막 학교까지 스크롤한 뒤 검색과 초기화를 수행했습니다. 767px과 768px 전환 시 가상 목록과 데스크톱 목록이 전환되는 것을 확인했습니다.
  • 긴 학교명이 있는 상세 화면으로 이동해 390px과 768px 및 1440px에서 확인했습니다. 홈에서 애플 SDK가 로드되지 않고 로그인에서 로드 실패 후 재시도로 복구되는 흐름을 제어된 SDK 응답으로 확인했습니다. 양쪽 화면에서 소셜 버튼 너비도 일치합니다.
  • GitHub Actions의 Web과 University Web 품질 검사 및 빌드가 통과했습니다. Admin은 변경 범위에 포함되지 않아 원격 검사가 생략됐습니다.
  • Web과 University Web 및 Admin의 Vercel 배포 검사가 모두 통과했습니다.
  • 이번 수정 범위의 독립 코드 리뷰에서 추가로 수정할 문제를 찾지 못했습니다.

참고

  • 브라우저 검증은 로컬 예시 데이터와 제어된 SDK 응답 기준입니다. 실제 계정 로그인과 OAuth 완료 및 인증 이후 지원서 제출과 운영 지도 동작은 수행하지 않았습니다.
  • 기존 모바일 화면과 대학 카탈로그의 별도 배포 구조를 유지합니다.

리뷰 요구사항

  • 모바일과 데스크톱에서 접근 조건과 제출 상태가 동일하게 유지되는지 확인해 주세요.
  • 중간 화면 폭의 목록 가독성과 학교 탐색 후 상세 이동을 확인해 주세요.

@vercel

vercel Bot commented Jun 24, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
solid-connect-university-web Ready Ready Preview Oct 25, 2026 2:34pm UTC
solid-connect-web-admin Ready Ready Preview Oct 25, 2026 2:34pm UTC
solid-connection-web Ready Ready Preview Oct 25, 2026 2:34pm UTC

@coderabbitai

coderabbitai Bot commented Jun 24, 2026 •

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

1. 전역 레이아웃에 데스크톱 내비게이션이 추가되고, 모바일 전용 상단·하단 네비게이션은 md 이상에서 숨겨지도록 바뀌었습니다.
2. 홈과 대학 탐색 화면은 모바일/데스크톱 전용 뷰와 fallback 구조로 재배치됐고, 대학 상세·검색 화면의 레이아웃이 분리됐습니다.
3. 커뮤니티와 멘토 화면은 variant와 뷰포트 판별 훅을 기준으로 목록, 상세, 작성, 채팅, 대기 화면이 분기되도록 바뀌었습니다.
4. 마이, 로그인, 회원가입, 약관, 비밀번호, 학교 이메일 화면은 데스크톱용 레이아웃과 공통 props 구조로 정리됐습니다.
5. 성적·지원 화면과 제출 컴포넌트는 데스크톱/모바일 전용 뷰, 공통 base 컴포넌트, 상단 탭과 하단 액션바 분리로 재구성됐습니다.

Estimated code review effort

🎯 5 (Critical) | ⏱️ ~120 minutes

Pre-merge checks: Passed 3 · Failed 2

Failed Failed checks: 2 warnings

Check name Status Explanation Resolution
Linked Issues check Warning 멘토 채팅 관련 변경은 있으나, 프로필/기본 이미지/날짜 색상/최신 메시지 스크롤 수정이 명시적으로 확인되지 않습니다. 채팅 상세의 프로필 렌더링, 기본 이미지, 날짜 색상, 초기 스크롤 위치 수정이 코드에서 어떻게 반영됐는지 명시하고 검증을 보강해 주세요.
Out of Scope Changes check Warning 멘토 채팅 이슈와 무관한 대학 검색, 홈, 로그인, 가입, 내 정보, 지원/성적 등 대규모 레이아웃 변경이 함께 포함되어 있습니다. 링크된 이슈 범위의 변경만 남기고, 나머지 데스크톱 레이아웃 개편은 별도 PR이나 추가 이슈로 분리해 주세요.
Passed Passed checks: 3 passed
Check name Status Explanation
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check Passed PR 제목은 여러 화면에 데스크톱 최적화 레이아웃을 적용한 핵심 변경사항을 간결하게 설명합니다.
Description check Passed PR 설명은 관련 이슈, 작업 내용, 검증 결과, 참고 사항, 리뷰 요구사항을 구체적으로 포함합니다. 템플릿의 '특이 사항' 제목은 없지만, 해당 내용은 '검증'과 '참고' 섹션에 충분히 기재되어 있어 전체적으로 요구사항을 충족합니다.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/desktop-mode-poc
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 50190331ae

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/app/my/apply-mentor/_components/InterestCountriesScreen/index.tsx Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 6

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@apps/university-web/src/app/university/`[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx:
- Line 23: The fallback background in UniversityDetail should be made darker to
preserve readability for the white overlay UI. Update the placeholder styling in
UniversityDetail/index.tsx where the background container is defined, replacing
the current bg-blue-100 with a dark neutral or gradient-based fallback that
matches the university background image guideline and keeps overlaid text
legible during loading/fallback states.

In `@apps/web/src/app/`(home)/_ui/PopularUniversitySection/index.tsx:
- Around line 33-34: The md skeleton in PopularUniversitySection does not match
the loaded card height, causing layout shift on desktop. Update the loading
placeholder in the same component so its md height matches the actual card
height used after load (the h-40 card), keeping the existing width and styling
consistent to reduce CLS.

In
`@apps/web/src/app/my/apply-mentor/_components/InterestCountriesScreen/index.tsx`:
- Line 133: The fixed CTA wrapper in InterestCountriesScreen is missing the
desktop offset, so on md+ it can slide under the left rail; update the
sticky/fixed container alongside the max-w change so it applies the same 88px
left offset at desktop sizes. Use the existing wrapper in
InterestCountriesScreen and the CTA container classes around the bottom action
area to keep the button region aligned with the main content instead of the
rail.

In `@apps/web/src/app/my/apply-mentor/_components/StudyStatusScreen/index.tsx`:
- Line 83: The fixed desktop bottom area in StudyStatusScreen is missing the md+
left offset, so its outer container still overlaps the left navigation rail when
the inner wrapper uses md:max-w-none. Update the fixed outer wrapper in the
StudyStatusScreen component to add the required 88px desktop offset while
keeping the current left-0/right-0 behavior on smaller screens, so the
sticky/fixed footer aligns correctly on md and above.

In `@apps/web/src/app/my/apply-mentor/_components/UniversityScreen/index.tsx`:
- Line 206: The fixed bottom button container in UniversityScreen still spans
the full viewport on md+ because only the width cap was removed, so it collides
with the left rail. Update the wrapper around the fixed action area in the
UniversityScreen component to keep the md:max-w-none change but also apply the
desktop left offset/padding used by other screens, so the sticky/fixed controls
are positioned relative to the content column instead of the full viewport.

In `@apps/web/src/app/my/password/_ui/PasswordContent/index.tsx`:
- Line 110: The fixed bottom button area in PasswordContent still ignores the
desktop rail offset, so on md+ it can overlap the 88px left rail even though the
inner width expands with md:max-w-none. Update the outer fixed wrapper in
PasswordContent (the container around the button/footer area) to apply the same
md+ left offset/spacing used by other desktop rail-aligned layouts, keeping the
button aligned to the main content area without changing its mobile behavior.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 95f23d43-64cb-41c5-a519-eb929b95c803

📥 Commits

Reviewing files that changed from the base of the PR and between 8ee2a03 and 5019033.

📒 Files selected for processing (39)
  • apps/university-web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetail/_ui/TitleSection.tsx
  • apps/university-web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx
  • apps/university-web/src/app/university/[homeUniversity]/_ui/RegionFilter.tsx
  • apps/university-web/src/app/university/[homeUniversity]/_ui/SearchBar.tsx
  • apps/university-web/src/app/university/[homeUniversity]/_ui/UniversityListContent.tsx
  • apps/university-web/src/app/university/[homeUniversity]/page.tsx
  • apps/university-web/src/components/layout/GlobalLayout/index.tsx
  • apps/university-web/src/components/layout/GlobalLayout/ui/BottomNavigation/index.tsx
  • apps/university-web/src/components/layout/GlobalLayout/ui/DesktopNavigation/index.tsx
  • apps/university-web/src/components/layout/PathBasedNavigation/index.tsx
  • apps/university-web/src/components/layout/TopDetailNavigation.tsx
  • apps/university-web/src/components/ui/TopLogoBar/index.tsx
  • apps/university-web/src/components/university/UniversityCards/index.tsx
  • apps/web/src/app/(home)/_ui/FindLastYearScoreBar/index.tsx
  • apps/web/src/app/(home)/_ui/HomeActionLinks/index.tsx
  • apps/web/src/app/(home)/_ui/HomeUniversitySearchSection/index.tsx
  • apps/web/src/app/(home)/_ui/NewsSection/index.tsx
  • apps/web/src/app/(home)/_ui/PopularUniversitySection/_ui/PopularUniversityCard.tsx
  • apps/web/src/app/(home)/_ui/PopularUniversitySection/index.tsx
  • apps/web/src/app/(home)/page.tsx
  • apps/web/src/app/community/[boardCode]/PostWriteButton.tsx
  • apps/web/src/app/community/[boardCode]/[postId]/CommentInput.tsx
  • apps/web/src/app/community/[boardCode]/[postId]/modify/PostModifyForm.tsx
  • apps/web/src/app/my/apply-mentor/_components/InterestCountriesScreen/index.tsx
  • apps/web/src/app/my/apply-mentor/_components/StudyStatusScreen/index.tsx
  • apps/web/src/app/my/apply-mentor/_components/UniversityScreen/index.tsx
  • apps/web/src/app/my/password/_ui/PasswordContent/index.tsx
  • apps/web/src/app/sign-up/email/EmailSignUpForm.tsx
  • apps/web/src/app/university/application/_components/ApplicationBottomActionBar.tsx
  • apps/web/src/app/university/score/ScoreScreen.tsx
  • apps/web/src/app/university/score/submit/gpa/GpaSubmitForm.tsx
  • apps/web/src/app/university/score/submit/language-test/LanguageTestSubmitForm.tsx
  • apps/web/src/components/layout/GlobalLayout/index.tsx
  • apps/web/src/components/layout/GlobalLayout/ui/BottomNavigation/index.tsx
  • apps/web/src/components/layout/GlobalLayout/ui/DesktopNavigation/index.tsx
  • apps/web/src/components/layout/PathBasedNavigation/index.tsx
  • apps/web/src/components/layout/TopDetailNavigation.tsx
  • apps/web/src/components/ui/TopLogoBar/index.tsx
  • apps/web/src/components/university/UniversityCards/index.tsx

Comment thread apps/web/src/app/(home)/_ui/PopularUniversitySection/index.tsx Outdated
Comment thread apps/web/src/app/my/apply-mentor/_components/InterestCountriesScreen/index.tsx Outdated
Comment thread apps/web/src/app/my/apply-mentor/_components/StudyStatusScreen/index.tsx Outdated
Comment thread apps/web/src/app/my/apply-mentor/_components/UniversityScreen/index.tsx Outdated
Comment thread apps/web/src/app/my/password/_ui/PasswordContent/index.tsx Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (3)
apps/web/src/app/(home)/_ui/HomeDesktopView/index.tsx (1)

187-195: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick win

1. 뉴스 카드 이미지에는 fallbackSrc가 빠져 있어요.

같은 파일의 추천/전체 학교 카드 이미지(120, 155번째 줄)는 모두 fallbackSrc로 깨진 이미지를 막아주고 있는데, 뉴스 이미지만 홀로 안전망 없이 외부 news.imageUrl을 그대로 받고 있어요. 외부 URL이 끊기거나 404가 나면 카드 한 칸이 휑하게 비어 보일 수 있으니, 일관성과 안정성을 위해 폴백을 채워주면 좋겠습니다.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/web/src/app/`(home)/_ui/HomeDesktopView/index.tsx around lines 187 -
195, The news card image rendered in HomeDesktopView’s Image usage is missing a
fallbackSrc, unlike the nearby recommendation/all-school card images, so add the
same fallback handling to this Image component. Update the Image props used for
news.imageUrl to include an appropriate fallbackSrc so broken or missing
external image URLs still render a safe placeholder and stay consistent with the
other cards.
apps/web/src/app/(home)/_ui/HomeDesktopView/HomeDesktopEntryPanel.tsx (1)

85-99: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

1. 안쪽 content div의 key는 살짝 멋쩍게 남아 있어요.

리스트 항목으로 실제 렌더되는 요소는 UniversityZoneLink/Link이고, 거기에 이미 key={href}가 잘 붙어 있어요. 88번째 줄의 content div에 있는 key는 배열 컨텍스트가 아니라 아무 역할도 하지 못하니, 정리해두면 의도가 더 또렷해집니다.

♻️ 제안 diff
             const content = (
               <div
-                key={href}
                 className={clsx("flex h-full min-h-32 flex-col justify-between rounded-lg p-4", colorClassName)}
               >
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/web/src/app/`(home)/_ui/HomeDesktopView/HomeDesktopEntryPanel.tsx around
lines 85 - 99, The inner content div in HomeDesktopEntryPanel’s actionLinks map
is carrying a redundant key even though the actual rendered list item is
UniversityZoneLink/Link and already uses key={href}. Remove the key from the
content div and keep the list key only on the component returned from the map so
the intent stays clear and the JSX structure is cleaner.
apps/university-web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx (1)

18-26: 🚀 Performance & Scalability | 🔵 Trivial

1. 모바일/데스크톱 분기를 조건부 렌더링으로 바꾸기
md:hidden/hidden md:block은 화면상으로만 숨길 뿐, 두 트리 모두 마운트됩니다. 이 구조에서는 UniversityBtns, InfoSection, MapSection 같은 하위 컴포넌트가 중복 생성되므로, 뷰포트에 따라 한쪽만 렌더링하는 쪽이 낫습니다.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@apps/university-web/src/app/university/`[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx
around lines 18 - 26, The UniversityDetail view currently mounts both mobile and
desktop trees using CSS visibility classes, so convert this split in
UniversityDetail/index.tsx to true conditional rendering based on viewport or
breakpoint state. Update the UniversityDetailMobile and UniversityDetailDesktop
usage so only one branch is rendered at a time, preventing duplicate creation of
shared child components like UniversityBtns, InfoSection, and MapSection. Keep
the branch selection logic close to the existing university/koreanName props
wiring so the component remains easy to locate and maintain.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@apps/university-web/src/app/university/`[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx:
- Line 134: The fixed “0회 파견” label in UniversityDetail is currently being shown
for every university even though the University type/API does not provide a
dispatch count yet. Update the UniversityDetail component to stop hardcoding
this value: either remove the display entirely until real data is available or
route it through a clearly separated temporary placeholder path so it is not
mistaken for actual data. Use the UniversityDetail JSX and any related
University typing/data-mapping code to find the spot and keep the UI aligned
with the available API fields.

In `@apps/web/src/app/`(home)/page.tsx:
- Around line 117-136: The responsive split in the home page should be changed
from always-rendered hidden DOM to conditional mounting so only the active
branch exists. Update the main page component around the mobile section and
HomeDesktopView to render either the mobile or desktop branch based on viewport,
instead of keeping both with md:hidden/hidden md:block. This will prevent hidden
next/image instances, especially the priority images used by
PopularUniversitySection and HomeDesktopView, from loading unnecessarily.

---

Nitpick comments:
In
`@apps/university-web/src/app/university/`[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx:
- Around line 18-26: The UniversityDetail view currently mounts both mobile and
desktop trees using CSS visibility classes, so convert this split in
UniversityDetail/index.tsx to true conditional rendering based on viewport or
breakpoint state. Update the UniversityDetailMobile and UniversityDetailDesktop
usage so only one branch is rendered at a time, preventing duplicate creation of
shared child components like UniversityBtns, InfoSection, and MapSection. Keep
the branch selection logic close to the existing university/koreanName props
wiring so the component remains easy to locate and maintain.

In `@apps/web/src/app/`(home)/_ui/HomeDesktopView/HomeDesktopEntryPanel.tsx:
- Around line 85-99: The inner content div in HomeDesktopEntryPanel’s
actionLinks map is carrying a redundant key even though the actual rendered list
item is UniversityZoneLink/Link and already uses key={href}. Remove the key from
the content div and keep the list key only on the component returned from the
map so the intent stays clear and the JSX structure is cleaner.

In `@apps/web/src/app/`(home)/_ui/HomeDesktopView/index.tsx:
- Around line 187-195: The news card image rendered in HomeDesktopView’s Image
usage is missing a fallbackSrc, unlike the nearby recommendation/all-school card
images, so add the same fallback handling to this Image component. Update the
Image props used for news.imageUrl to include an appropriate fallbackSrc so
broken or missing external image URLs still render a safe placeholder and stay
consistent with the other cards.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: d2e358f8-9cbe-41de-9297-40c83f4770b9

📥 Commits

Reviewing files that changed from the base of the PR and between 5019033 and 4b10d9e.

📒 Files selected for processing (12)
  • apps/university-web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetail/index.tsx
  • apps/university-web/src/app/university/[homeUniversity]/_ui/UniversityListContent.tsx
  • apps/web/src/app/(home)/_ui/HomeDesktopView/HomeDesktopEntryPanel.tsx
  • apps/web/src/app/(home)/_ui/HomeDesktopView/index.tsx
  • apps/web/src/app/(home)/_ui/PopularUniversitySection/index.tsx
  • apps/web/src/app/(home)/page.tsx
  • apps/web/src/app/my/apply-mentor/_components/InterestCountriesScreen/index.tsx
  • apps/web/src/app/my/apply-mentor/_components/StudyStatusScreen/index.tsx
  • apps/web/src/app/my/apply-mentor/_components/UniversityScreen/index.tsx
  • apps/web/src/app/my/password/_ui/PasswordContent/index.tsx
  • apps/web/src/app/university/application/_components/ApplicationBottomActionBar.tsx
  • apps/web/src/app/university/score/ScoreScreen.tsx
✅ Files skipped from review due to trivial changes (5)
  • apps/web/src/app/my/apply-mentor/_components/UniversityScreen/index.tsx
  • apps/web/src/app/university/score/ScoreScreen.tsx
  • apps/web/src/app/my/apply-mentor/_components/StudyStatusScreen/index.tsx
  • apps/web/src/app/(home)/_ui/PopularUniversitySection/index.tsx
  • apps/web/src/app/my/password/_ui/PasswordContent/index.tsx
🚧 Files skipped from review as they are similar to previous changes (3)
  • apps/web/src/app/my/apply-mentor/_components/InterestCountriesScreen/index.tsx
  • apps/web/src/app/university/application/_components/ApplicationBottomActionBar.tsx
  • apps/university-web/src/app/university/[homeUniversity]/_ui/UniversityListContent.tsx

Comment thread apps/web/src/app/(home)/page.tsx Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/web/src/app/my/_ui/MyProfileContent/index.tsx`:
- Around line 392-400: `DesktopMenuItem` currently renders a button whenever
`href` is missing, even if `onClick` is undefined, which creates a
clickable-looking but inert control. Update the render logic in
`DesktopMenuItem` to branch on interactivity: keep the `Link` path for `href`,
render a `button` only when `onClick` exists, and otherwise fall back to a
non-interactive container for `content`. Use the existing `href`, `onClick`, and
`content` props to locate the conditional render block.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 75689eab-512a-462a-88a3-898aab0db16e

📥 Commits

Reviewing files that changed from the base of the PR and between 4b10d9e and fcf913b.

📒 Files selected for processing (1)
  • apps/web/src/app/my/_ui/MyProfileContent/index.tsx

Comment thread apps/web/src/app/my/_ui/MyProfileContent/index.tsx

This branch was successfully deployed

3 active deployments
Preview – solid-connect-web-admin — 549d9676 Deployed Oct 25, 2026 by vercel[bot]
Preview – solid-connect-university-web — 549d9676 Deployed Oct 25, 2026 by vercel[bot]
Preview – solid-connection-web — 549d9676 Deployed Oct 25, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

university Changes in apps/university-web web

Projects

None yet

Development

Successfully merging this pull request may close these issues.

멘토 채팅 수정

1 participant