Profile & Settings
Your profile is your identity on BookWish. Customize how you appear to other readers and configure your account preferences to get the most out of the platform.
Accessing Settings
To access your profile and settings:
- Tap your avatar in the top navigation bar
- Select "Edit Profile & Settings" from the profile overlay
- The settings screen has two main tabs:
- Account: Profile information, subscription, home store, addresses, security
- Preferences: Notifications, privacy, stock alerts, blocked users
Code Reference: Settings interface is in /app/lib/ui/overlays/settings_overlay.dart
Account Settings
Profile Information
Edit your public profile details:
Display Name
- Your name as shown to other readers
- Can be your real name or a pseudonym
- Appears on all your posts, reviews, and wishlists
Username
- Your unique @handle
- Used for mentions and profile URLs
- Must be unique across BookWish
- Alphanumeric characters and underscores only
Email Address
- Used for login and notifications
- Must be verified
- Cannot be changed to an email already in use
- Shown only on your own profile (never public)
Profile Photo
- Upload a custom avatar image
- Tap the camera icon on your avatar
- Supported formats: JPG, PNG
- Recommended size: 512x512 pixels
- If no photo is set, displays your initials
Code Details: Profile editing is handled in /app/lib/ui/overlays/settings_overlay.dart (lines 119-494).
To edit your profile:
- Tap "Edit Profile" button
- Modify any fields
- Tap "Save" to apply changes
- Or "Cancel" to discard
Subscription Management
View and manage your BookWish subscription tier:
Free Plan
- Up to 3 wishlists
- Basic features
- View public content
- Follow users
Premium Plan
- Unlimited wishlists - create as many as you need
- Unlimited posts - share Lines, Reviews, and notes
- Create book clubs - start and host reading groups
- Create challenges - design reading challenges
- Priority support - get help faster
The subscription card shows:
- Your current plan name
- Renewal date (for active subscriptions)
- Expiration date (for cancelled subscriptions)
- Tap to view details or upgrade
Implementation: Subscription UI is in /app/lib/ui/overlays/settings_overlay.dart (lines 1259-1353).
Home Store
Set your local independent bookstore for personalized features:
Why Set a Home Store?
- Local inventory - see what's in stock near you
- Stock alerts - get notified when wishlist books arrive
- Support local - your searches prioritize your home store
- Community - connect with fellow readers at your store
How to Set Your Home Store
- In Account settings, find "Home Store" section
- Tap "Choose Home Store"
- Search for stores by name or location
- Select your preferred store
- Confirm the selection
Managing Your Home Store
Once set, you can:
- Change store - tap the menu icon and select "Change Store"
- Remove store - tap the menu icon and select "Remove"
- View store details including address and hours
Code Reference: Home store management is in /app/lib/ui/overlays/settings_overlay.dart (lines 1027-1257).
Shipping Addresses
Manage your saved shipping addresses for faster checkout:
Adding an Address
- In Account settings, scroll to "Shipping Addresses"
- Tap the "Add" button
- Fill in the address form:
- Label (e.g., "Home", "Work", "Parents")
- Full name
- Address line 1 (street address)
- Address line 2 (apartment, suite - optional)
- City
- State
- Postal code
- Phone number (optional)
- Tap "Save"
Managing Addresses
For each saved address, you can:
- Edit - tap the menu and select "Edit"
- Set as default - used automatically at checkout
- Delete - remove addresses you no longer need
Default addresses are highlighted with a special badge.
Implementation: Address management uses /app/lib/ui/widgets/address_form_dialog.dart and the addresses section is in /app/lib/ui/overlays/settings_overlay.dart (lines 1355-1524).
Security
Change Password
To update your password:
- Tap "Change Password" in the Security section
- Enter your current password
- Enter your new password (must meet requirements)
- Confirm the new password
- Tap "Change"
Password Requirements:
- Minimum 8 characters
- At least one uppercase letter
- At least one lowercase letter
- At least one number
- Cannot be the same as your email
Code Reference: Password change dialog is in /app/lib/ui/overlays/settings_overlay.dart (lines 835-1025).
Preferences
Switch to the Preferences tab to configure app behavior and privacy settings.
Notifications
Control how BookWish keeps you informed: