Skip to content

feat(frontend): BottomNavigation コンポーネント実装#72

Open
aowheel wants to merge 2 commits intomainfrom
issue/58
Open

feat(frontend): BottomNavigation コンポーネント実装#72
aowheel wants to merge 2 commits intomainfrom
issue/58

Conversation

@aowheel
Copy link
Collaborator

@aowheel aowheel commented Mar 11, 2026

関連 Issue

Closes #58

変更内容

  • BottomNavigation(カプセル型の固定バー)と BottomNavigationItem(アイコン+ラベル)を実装
  • React Router の NavLink による active 状態の自動判定(bg-alpha-black-25 で表現)
  • disabled 状態対応(opacity-40 + リンク無効化)
  • safe-area 対応(pb-[env(safe-area-inset-bottom)]
  • a11y: aria-label, aria-current="page", aria-disabled, focus-visible:ring 対応
  • Ladle ストーリー3パターン(デフォルト / 3番目アクティブ / disabled あり)

動作確認

  • ローカル環境で動作確認済み
  • テストが通ることを確認済み
  • ビルドが成功することを確認済み

設計メモ

  • Figma に合わせてカプセル型(rounded-full)の浮遊バーとして実装
  • 背景は bg-primary、テキスト・アイコンは text-primary-foreground
  • active 表現は bg-alpha-black-25 による色差(Issue の Open Question に対する暫定実装)

🤖 Generated with Claude Code

Implement BottomNavigation (capsule-shaped fixed bar) and
BottomNavigationItem (icon + label with active/disabled states)
using semantic design tokens. Includes Ladle stories for active
state and disabled item variations.

Closes #58

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings March 11, 2026 10:06
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR introduces a new bottom navigation UI component for the frontend, along with Storybook stories to validate active/disabled states and routing behavior.

Changes:

  • Added BottomNavigation and BottomNavigationItem components with fixed bottom positioning and active-state styling.
  • Implemented a disabled rendering path for navigation items.
  • Added Storybook stories using MemoryRouter to demonstrate route-driven active states.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
packages/frontend/app/components/ui/bottom-navigation.tsx New bottom navigation + item components built on NavLink, including active/disabled styling and accessibility attributes.
packages/frontend/app/components/bottom-navigation.stories.tsx Storybook stories exercising active route behavior and disabled item rendering via MemoryRouter.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

- Remove redundant aria-current on inner span (NavLink handles it)
- Remove unused ...props spread (type doesn't extend NavLink props)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.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.

コンポーネント実装:Bottom Navigation(Navigation / NavigationItem)

2 participants