Overview › Design System & Onboarding
Design System & Onboarding
iOS-specific report.
Executive summary
CostcoDesignSystem SPM provides Pallet tokens (UIKit + SwiftUI), MaterialTextField, Popup, components. Adoption is partial — feature code uses literal hex despite tokens. README is shared at root; per-package READMEs absent.
Design system inventory
- PalletUIKit — UIColor tokens (Pallet/UIKit) at
CostcoDesignSystem/Sources/CostcoDesignSystem/DesignTokens/New/PalletUIKit.swift - Pallet (SwiftUI) — Color tokens for SwiftUI
- MaterialTextField — Material Design-styled input
- PopupView — modal popup component
- NoInternetServiceNotificationView — offline state component
- Sample app —
SampleCostcoDesignSystemfor design review
Findings
HIGH
Tokens defined but not enforced
Feature code routinely uses
Color(hex: "#…") bypassing tokens.Recommendation: SwiftLint custom rule banning hex initializers outside
CostcoDesignSystem; sweep existing literals.HIGH
No per-SPM-package README
29 packages, no module docs.
Recommendation: Add 1-paragraph README to each package: purpose, public types, example.
MEDIUM
SwiftUI Preview coverage
Some components missing previews.
Recommendation: Mandate
#Preview per public View; tie to snapshot tests.MEDIUM
Onboarding scripts missing
No
scripts/setup.sh for new engineers.Recommendation: Add scripts/setup.sh that opens workspace, runs Pod install, runs first build, prints expected output.
Costco iOS · Code Review Report · Generated 2026-05-07 · 88 machine-curated findings