Skip to content

feat(v0.5): add error banner and error state UI#3

Merged
jacuzzicoding merged 1 commit into
mainfrom
feature/error-handling
Apr 14, 2026
Merged

feat(v0.5): add error banner and error state UI#3
jacuzzicoding merged 1 commit into
mainfrom
feature/error-handling

Conversation

@jacuzzicoding
Copy link
Copy Markdown
Owner

Changes

  • ErrorBanner component: New dismissible error banner with support for multiple error types (dataLoadFailed, networkError, operationFailed, validationFailed). Includes optional retry button and recovery suggestions.

  • ErrorState component: New full-page error state UI for critical load failures. Displays appropriate messaging and icons based on error type with retry functionality.

  • ACCanvas integration: Enhanced with error handling:

    • Added state management for load errors and banner notifications
    • Refactored data loading into loadMuseumData() function for reusability
    • Integrated error detection (network vs data load failures)
    • Displays ErrorState during critical failures and ErrorBanner for recoverable errors

Visual Design

  • Warm color scheme matching the app's natural aesthetic (fall colors)
  • Accessible error states with proper ARIA labels
  • Inline error banners and full-page error states for different failure scenarios

- Add ErrorBanner component: dismissable inline banner for transient
  errors, with optional Retry button. Supports dataLoadFailed,
  operationFailed, networkError, and validationFailed kinds.
- Add ErrorState component: full-screen parchment-card error UI shown
  when museum data fails to load, with a Try Again button.
- Wire both into ACCanvas: data fetch now sets loadError state on
  failure (distinguishes network vs. parse errors); ErrorState replaces
  the blank screen; ErrorBanner sits below MuseumHeader for future
  transient errors; retry re-runs the fetch.
- Mirrors iOS ErrorBanner/ErrorState pattern from AnimalCrossingGCN-Tracker.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jacuzzicoding jacuzzicoding merged commit 7e64d9d into main Apr 14, 2026
1 check failed
@jacuzzicoding jacuzzicoding deleted the feature/error-handling branch April 16, 2026 22:01
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.

1 participant