Skip to content

shadcn/ui Component Collection - Installation Log & Checklist

Installation Date: October 13, 2025
Branch: feat/shadcn-ui-collection
Target Package: packages/ui-web/
Method: Gradual rollout (4 rounds)


  • Current branch verified: feat/astro-starlight-docs
  • Uncommitted changes from NavigationMenu work present
  • Decision: Commit NavigationMenu work first OR create new branch
  • New branch created: feat/shadcn-ui-collection
  • Restore point tag created: shadcn-pre-install
  • Branch pushed to remote
  • React version: 18.3.1 (locked via resolutions)
  • Tailwind CSS: 3.4.10
  • Storybook: 8.6.14
  • NavigationMenu already working (proves architecture)
  • CSS variables configured
  • Tailwind config extended
  • Working directory: /Users/work-station/company/cloudalt-frontend/packages/ui-web

Round 1: Core UI Components (10 components)

Section titled “Round 1: Core UI Components (10 components)”

Category: Forms & Basic Inputs
Estimated Time: 15-20 minutes

  • button - Primary action buttons
  • input - Text input fields
  • textarea - Multi-line text input
  • select - Dropdown selection
  • checkbox - Multi-select checkboxes
  • radio-group - Single-select radio buttons
  • switch - Toggle switches
  • label - Form labels
  • badge - Status indicators
  • avatar - User profile images
Terminal window
cd /Users/work-station/company/cloudalt-frontend/packages/ui-web
npx shadcn@latest add button input textarea select checkbox radio-group switch label badge avatar
  • No yarn install errors
  • Files created in packages/ui-web/src/components/ui/
  • Dependencies added to package.json
  • Run yarn install at workspace root
  • No TypeScript errors: yarn nx build ui-web
  • Storybook still loads: yarn storybook

Document any problems or warnings here


Round 2: Layout Components (10 components)

Section titled “Round 2: Layout Components (10 components)”

Category: Layout & Containers
Estimated Time: 15-20 minutes

  • card - Content containers
  • separator - Visual dividers
  • sheet - Side panels
  • drawer - Slide-in panels
  • tabs - Tabbed interfaces
  • accordion - Collapsible sections
  • collapsible - Expandable content
  • dialog - Modal overlays
  • alert-dialog - Confirmation modals
  • scroll-area - Custom scrollbars
Terminal window
cd /Users/work-station/company/cloudalt-frontend/packages/ui-web
npx shadcn@latest add card separator sheet drawer tabs accordion collapsible dialog alert-dialog scroll-area
  • No yarn install errors
  • Files created successfully
  • Dependencies added
  • Run yarn install at workspace root
  • No TypeScript errors: yarn nx build ui-web
  • Storybook still loads

Document any problems or warnings here


Round 3: Feedback Components (10 components)

Section titled “Round 3: Feedback Components (10 components)”

Category: Feedback & Overlays
Estimated Time: 15-20 minutes

  • alert - Contextual messages
  • toast - Notification toasts
  • sonner - Alternative toast system
  • tooltip - Hover hints
  • popover - Floating content
  • hover-card - Popover on hover
  • progress - Progress bars
  • skeleton - Loading placeholders
  • spinner - Loading indicators
  • aspect-ratio - Media aspect ratios
Terminal window
cd /Users/work-station/company/cloudalt-frontend/packages/ui-web
npx shadcn@latest add alert toast sonner tooltip popover hover-card progress skeleton spinner aspect-ratio
  • No yarn install errors
  • Files created successfully
  • Dependencies added
  • Run yarn install at workspace root
  • No TypeScript errors: yarn nx build ui-web
  • Storybook still loads

Document any problems or warnings here


Round 4: Navigation & Data Components (20+ components)

Section titled “Round 4: Navigation & Data Components (20+ components)”

Category: Navigation, Data Display & Advanced
Estimated Time: 20-25 minutes

  • breadcrumb - Navigation path
  • menubar - Application menu
  • command - Command palette (⌘K)
  • context-menu - Right-click menus
  • dropdown-menu - Action menus
  • pagination - Page navigation
  • table - Data tables
  • calendar - Date selection
  • date-picker - Calendar input
  • chart - Data visualization
  • carousel - Content slider
  • combobox - Searchable select
  • slider - Range inputs
  • toggle - Toggle buttons
  • toggle-group - Button groups
  • form - Form management
  • resizable - Adjustable panels
  • sidebar - Application sidebar
  • input-otp - One-time password
Terminal window
cd /Users/work-station/company/cloudalt-frontend/packages/ui-web
npx shadcn@latest add breadcrumb menubar command context-menu dropdown-menu pagination table calendar date-picker chart carousel combobox slider toggle toggle-group form resizable sidebar input-otp
  • No yarn install errors
  • Files created successfully
  • Dependencies added (~35 @radix-ui packages total)
  • Run yarn install at workspace root
  • No TypeScript errors: yarn nx build ui-web
  • Storybook still loads

Document any problems or warnings here


  • Update packages/ui-web/src/index.ts to export all components
  • Verify no duplicate exports
  • Test imports in a sample file
Terminal window
cd /Users/work-station/company/cloudalt-frontend
node scripts/generate-shadcn-stories.js
  • Script executed successfully
  • Stories created for all components
  • Stories organized by category
  • No errors in generated files
Terminal window
cd /Users/work-station/company/cloudalt-frontend
yarn storybook
  • Storybook loads without errors
  • All new components visible in sidebar
  • Components render correctly
  • No console errors
  • Dark mode works
  • Interactions functional
Terminal window
cd /Users/work-station/company/cloudalt-frontend
yarn nx run ui-web:build
yarn build-storybook
  • ui-web builds successfully
  • No TypeScript errors
  • Storybook builds successfully
  • Bundle size acceptable
  • Import components in test app (e.g., apps/bonjour_services/bonjour_it_com/web)
  • Components render in app
  • Styling works correctly
  • No runtime errors
  • Bundle size impact acceptable

  • Update docs/SHADCN_COMPONENT_COLLECTION_PLAN.md with actual results
  • Create usage examples in Astro docs
  • Update README if needed
  • Add component guide to documentation
Terminal window
cd /Users/work-station/company/cloudalt-frontend
git add .
git commit -m "feat(ui-web): add complete shadcn/ui component collection (50+ components)
- Installed all shadcn/ui components in 4 rounds
- Round 1: Core UI (10 components)
- Round 2: Layout (10 components)
- Round 3: Feedback (10 components)
- Round 4: Navigation + Data (20+ components)
- Generated Storybook stories for all components
- Updated dependencies (35+ @radix-ui packages)
- Verified builds and Storybook rendering
- Components available at monorepo level for all web apps
Validation:
- All components render in Storybook ✅
- No build errors ✅
- Bundle size acceptable (tree-shakeable) ✅
Restore point: shadcn-pre-install tag"
  • Push branch: git push origin feat/shadcn-ui-collection
  • Push tag: git push origin shadcn-pre-install
  • Verify on remote repository

Terminal window
# Reset to pre-install state
git reset --hard shadcn-pre-install
git push origin feat/shadcn-ui-collection --force
Terminal window
# Remove specific component
cd packages/ui-web
rm -rf src/components/ui/[component-name]
# Remove from package.json
# Edit manually and run:
yarn install

  • Before: ___ KB (record baseline)
  • After: ___ KB
  • Increase: ___ KB (~500KB expected, tree-shakeable)
  • Before: ___ seconds (ui-web build)
  • After: ___ seconds
  • Increase: ~5-10 seconds expected
  • Before: ___ seconds load time
  • After: ___ seconds
  • Component Count: ___ stories
  • Before: 4 Radix UI packages
  • After: ~35 Radix UI packages
  • Additional: date-fns, react-day-picker, recharts, sonner, vaul, etc.

  • ✅ All 50+ components installed without errors
  • ✅ All components render in Storybook
  • ✅ No TypeScript compilation errors
  • ✅ No runtime errors in test application
  • ✅ Bundle size increase acceptable (<500KB gzipped)
  • ✅ Storybook performance acceptable (<15s load time)
  • ✅ All components importable from @cloudalt-frontend/ui-web
  • ✅ Documentation complete

  1. Division-Level Customization

    • Create wrappers in packages/ui-stay-match/
    • Create wrappers in packages/ui-bonjour-services/
    • Add division-specific branding
  2. Documentation

    • Add component guides to Astro docs
    • Create usage examples
    • Document theming approach
    • Add migration guides
  3. Testing

    • Add unit tests for critical components
    • Add accessibility tests
    • Add visual regression tests (Chromatic)
  4. Optimization

    • Review bundle sizes
    • Optimize imports
    • Consider code splitting for heavy components

Use this section to document any insights, gotchas, or lessons learned during installation


Installed By: [Your Name]
Date Completed: ___________
Status: 🟢 Success | 🟡 Partial | 🔴 Failed
Ready for Production: Yes / No