Skip to content

Version 1 - #7

Merged
Mwvndva merged 2 commits into
mainfrom
version-1
Jul 10, 2026
Merged

Version 1#7
Mwvndva merged 2 commits into
mainfrom
version-1

Conversation

@Mwvndva

@Mwvndva Mwvndva commented Jul 10, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

  • New Features

    • Added a unified visual design system with reusable buttons, cards, avatars, dialogs, bottom sheets, menus, text fields, loading indicators, and empty/error states.
    • Added password visibility toggling and standardized search and text input fields.
    • Added consistent notification cards with unread indicators and improved accessibility labels.
  • Improvements

    • Updated profile, circle, authentication, legal, sharing, and notification screens with consistent styling and interactions.
    • Standardized success and error messages across the app.
    • Simplified the camera preview appearance.

kiidfreak and others added 2 commits July 10, 2026 05:43
…e camera border

Establishes lib/design_system/ as the single source of truth for visual style,
and migrates the first screens onto it. Material 3 remains the implementation;
feature code now consumes Memory-branded components instead of raw Material.

Foundation (tokens)
- MemoryColors, MemoryTypography, MemorySpacing, MemoryRadius, MemoryShadows,
  MemoryDurations, MemoryCurves, MemoryMotion.
- Every value is lifted verbatim from constants previously written inline, so
  adopting a token does not move a pixel.

Components
- MemoryButton (primary/secondary/danger, regular/compact, loading, disabled)
- MemoryCard, MemorySection, MemorySectionHeader, MemoryDivider
- MemoryListTile, MemoryActionTile
- MemoryBottomSheet, MemoryEmptyState, MemoryLoading

Deduplication
- Two divergent pill buttons existed: `pill()` in shared/widgets and
  `ProfilePill` in the circle feature. Both collapse into MemoryButton. The
  `pill()` helper is now a thin adapter, kept only while its call sites are
  migrated screen by screen.
- ProfileSectionCard, ProfileDetailRow, ProfilePolicyRow and ProfileActionSheet
  were generic surfaces wearing a feature's name. Deleted; replaced by
  MemoryCard/MemorySection, MemoryListTile, MemoryActionTile and
  MemoryBottomSheet.

Capture screen
- Removed the yellow border drawn around the camera preview: the 1.5px stroke,
  the yellow glow shadow, the translucent fill and the 2px inset are all gone.
  The preview is now edge-to-edge inside its rounded clip. No outline replaces
  it. Framing, safe areas, recording animations, focus indicators and the
  capture controls are untouched.

Accessibility
- MemoryButton now reports itself as a button to screen readers; BouncyTap is a
  GestureDetector, which previously announced only the label text.
- Dynamic text scaling remains untouched (no textScaler overrides anywhere).
- Known: the compact button height is 34dp, below the 48dp minimum touch
  target. Pre-existing; left unchanged because raising it would reflow the
  cards it sits in. Tracked for a follow-up.

Intentional behaviour changes (not regressions)
- Profile action rows and buttons gain the same press feedback the auth buttons
  already had, per the motion system.
- "Add someone" is disabled at 30/30 rather than rendering an enabled button
  that silently does nothing.
- "Sign out of all other devices" shows a spinner instead of swapping its label.

Verification: flutter analyze --fatal-infos --fatal-warnings, dart format
--set-exit-if-changed, flutter test (55), flutter build apk --debug all pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ackbars, notifications

Continues the Memory Design System rollout. Nine new components, five more
screens migrated, and the app's transient-message and dialog surfaces are now
centralised. Material 3 remains the implementation.

New components (9)
- MemorySnackBar (tone: neutral/error), MemoryDialog + MemoryDialogAction
- MemoryAvatar, MemoryIconButton (48dp hit target), MemoryBadge, MemoryChip
- MemoryTextField, MemoryPasswordField, MemorySearchField
- MemoryTopBar, MemoryFloatingActionButton, MemoryContextMenu
- MemorySkeleton, MemoryErrorState, MemoryProgressIndicator

Screens migrated this pass
- core/error_handler — showAppError/showAppMessage now delegate to
  MemorySnackBar, so every transient message in the app has one implementation.
- create_account_view — 10 inline ScaffoldMessenger/SnackBar sites replaced
  with showAppError. Auth logic untouched.
- profile_account_actions — three AlertDialogs to MemoryDialog.
- profile_legal_sheets — terms sheet and policy dialog onto tokens and
  MemoryBottomSheet/MemoryDialog/MemoryIconButton/MemoryButton.
- circle_list_tiles — CircleAvatar to MemoryAvatar, unread dot to MemoryBadge,
  remove-member AlertDialog to MemoryDialog.
- notification_screen — new reusable NotificationCard (read/unread state,
  type glyph, semantics), MemoryEmptyState, MemoryLoading.

Cleanup
- Folded a stray MemoryDurationsAlias file into MemoryDurations rather than
  keep two duration definitions.

Metrics (feature code, design_system excluded)
- SnackBar( 44 -> 18   AlertDialog( 8 -> 3   CircleAvatar( 12 -> 10
- BorderRadius.circular(N) 94 -> 86   inline TextStyle( 217 -> 188
- files importing design_system 7 -> 13   DS components 9 -> 18

The migration is NOT complete. memory_feed_view, camera_capture_view,
memory_detail_screen, chat_inbox_view, chat_widgets, login_view,
contacts_setup_view and the milestone dialogs still carry legacy UI.
MemoryProfileCard, MemoryVideoCard, MemoryNavigationBar, MemoryVideoControls,
MemoryReactionBar and MemoryCommentComposer are not built.

Verification: flutter analyze --fatal-infos --fatal-warnings, dart format
--set-exit-if-changed, flutter test (55), flutter build apk --debug all pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: af0f51bc-741e-436d-89f7-2549b848a272

📥 Commits

Reviewing files that changed from the base of the PR and between 329592c and 90bb7a5.

📒 Files selected for processing (40)
  • lib/core/error_handler.dart
  • lib/design_system/components/memory_avatar.dart
  • lib/design_system/components/memory_badge.dart
  • lib/design_system/components/memory_bottom_sheet.dart
  • lib/design_system/components/memory_button.dart
  • lib/design_system/components/memory_card.dart
  • lib/design_system/components/memory_context_menu.dart
  • lib/design_system/components/memory_dialog.dart
  • lib/design_system/components/memory_divider.dart
  • lib/design_system/components/memory_empty_state.dart
  • lib/design_system/components/memory_icon_button.dart
  • lib/design_system/components/memory_list_tile.dart
  • lib/design_system/components/memory_loading.dart
  • lib/design_system/components/memory_section.dart
  • lib/design_system/components/memory_section_header.dart
  • lib/design_system/components/memory_snack_bar.dart
  • lib/design_system/components/memory_states.dart
  • lib/design_system/components/memory_text_field.dart
  • lib/design_system/components/memory_top_bar.dart
  • lib/design_system/design_system.dart
  • lib/design_system/foundation/memory_colors.dart
  • lib/design_system/foundation/memory_elevation.dart
  • lib/design_system/foundation/memory_motion.dart
  • lib/design_system/foundation/memory_radius.dart
  • lib/design_system/foundation/memory_spacing.dart
  • lib/design_system/foundation/memory_typography.dart
  • lib/features/auth/views/avatar_upload_view.dart
  • lib/features/auth/views/create_account_view.dart
  • lib/features/capture/views/camera_capture_view.dart
  • lib/features/circle/views/circle_chat_list_view.dart
  • lib/features/circle/views/profile_account_actions.dart
  • lib/features/circle/views/profile_legal_sheets.dart
  • lib/features/circle/views/profile_panel.dart
  • lib/features/circle/views/profile_settings_sheets.dart
  • lib/features/circle/views/profile_share_card.dart
  • lib/features/circle/widgets/circle_list_tiles.dart
  • lib/features/circle/widgets/profile_widgets.dart
  • lib/features/notification/notification_screen.dart
  • lib/features/notification/widgets/notification_card.dart
  • lib/shared/widgets/pills.dart

📝 Walkthrough

Walkthrough

Introduces a centralized Memory design system with shared tokens and Flutter components, then migrates authentication, profile, circle, notification, sheet, dialog, button, avatar, and error-message UI to use the new components.

Changes

Memory design system rollout

Layer / File(s) Summary
Design tokens and public barrel
lib/design_system/foundation/*, lib/design_system/design_system.dart
Adds centralized colors, typography, spacing, radius, elevation, motion tokens, and a barrel export.
Core visual and interaction components
lib/design_system/components/memory_avatar.dart, memory_badge.dart, memory_button.dart, memory_card.dart, memory_divider.dart, memory_empty_state.dart, memory_icon_button.dart, memory_list_tile.dart, memory_loading.dart, memory_section*.dart, memory_top_bar.dart
Adds reusable visual, layout, accessibility, loading, and interaction widgets.
Overlays, fields, and state components
lib/design_system/components/memory_bottom_sheet.dart, memory_context_menu.dart, memory_dialog.dart, memory_snack_bar.dart, memory_states.dart, memory_text_field.dart
Adds shared sheets, menus, dialogs, snack bars, state indicators, and text-field variants.
Authentication and shared control migration
lib/core/error_handler.dart, lib/features/auth/views/*, lib/shared/widgets/pills.dart, lib/features/capture/views/camera_capture_view.dart
Routes app messages through MemorySnackBar, migrates authentication actions to MemoryButton, adapts the legacy pill helper, and simplifies camera preview decoration.
Profile and circle surface migration
lib/features/circle/views/*, lib/features/circle/widgets/*
Replaces profile and circle-specific UI surfaces with shared Memory cards, buttons, tiles, dialogs, sheets, avatars, badges, and design tokens.
Notification surface migration
lib/features/notification/notification_screen.dart, lib/features/notification/widgets/notification_card.dart
Adds NotificationCard and updates notification loading, empty, list, styling, semantics, and tap handling.

Estimated code review effort: 4 (Complex) | ~60 minutes

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch version-1

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Mwvndva
Mwvndva merged commit 3345f61 into main Jul 10, 2026
1 of 4 checks passed
@coderabbitai coderabbitai Bot mentioned this pull request Jul 10, 2026
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.

2 participants