feat(ui): add 23 home screen design variants with picker

Add design style system with 23 unique home screen aesthetics:
- Classic (original SportsTime design, now default)
- 12 experimental styles (Brutalist, Luxury Editorial, etc.)
- 10 polished app-inspired styles (Flighty, SeatGeek, Apple Maps,
  Things 3, Airbnb, Spotify, Nike Run Club, Fantastical, Strava,
  Carrot Weather)

Includes settings picker to switch between styles and persists
selection via UserDefaults.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-01-13 14:44:30 -06:00
parent 3d40145ffb
commit 56869ce479
27 changed files with 8636 additions and 27 deletions

View File

@@ -23,33 +23,14 @@ struct HomeView: View {
TabView(selection: $selectedTab) {
// Home Tab
NavigationStack {
ScrollView {
VStack(spacing: Theme.Spacing.xl) {
// Hero Card
heroCard
.staggeredAnimation(index: 0)
// Quick Actions
quickActions
.staggeredAnimation(index: 1)
// Suggested Trips
suggestedTripsSection
.staggeredAnimation(index: 2)
// Saved Trips
if !savedTrips.isEmpty {
savedTripsSection
.staggeredAnimation(index: 3)
}
// Featured / Tips
tipsSection
.staggeredAnimation(index: 4)
}
.padding(Theme.Spacing.md)
}
.themedBackground()
AdaptiveHomeContent(
showNewTrip: $showNewTrip,
selectedTab: $selectedTab,
selectedSuggestedTrip: $selectedSuggestedTrip,
savedTrips: savedTrips,
suggestedTripsGenerator: suggestedTripsGenerator,
displayedTips: displayedTips
)
.toolbar {
ToolbarItem(placement: .primaryAction) {
Button {