1 Hub
2 Account
3 Notifications
4 Privacy
5 Appearance
6 Support
7 About
8 Danger

Settings Hub
9:41
Settings
JM
James Mitchell
james.mitchell@email.com
Homeowner
Account
Account Settings
Email, phone, password, linked accounts
Payment Methods
Manage cards and billing info
Preferences
Notifications
Push, email, SMS, and quiet hours
Privacy & Security
Visibility, sessions, blocked users
Appearance
Theme, font size, accessibility
Support
Help & Support
FAQs, contact us, report a bug
About & Legal
Version, terms, privacy policy
Sign Out
Home
Jobs
Messages
Settings

SettingsHub screen. Shared layout, role badge adapts to poster/contractor. useAuth() for role, useQuery(api.users.*.me) for profile.

Hub — Contractor Variant
9:41
Settings
RG
Rodriguez General
maria@rodriguezgeneral.com
Contractor
Account
Account Settings
Email, phone, password, linked accounts
Payment & Payouts
Stripe Connect, payout schedule
Preferences
Notifications
Push, email, SMS, and quiet hours
Privacy & Security
Visibility, sessions, blocked users
Appearance
Theme, font size, accessibility
Service Area
Radius, zip codes, travel distance
Support
Help & Support
FAQs, contact us, report a bug
About & Legal
Version, terms, privacy policy
Sign Out
Home
Jobs
Messages
Settings

Contractor variant shows Service Area and Payouts sections. Role badge is terracotta. Same component, conditional sections via userRole.


Account Settings
9:41
Account
Contact Information
Email Address
james.mitchell@email.com
Phone Number
(330) 555-0147
Security
Change Password
Last changed 3 months ago
Two-Factor Authentication
Add an extra layer of security
Linked Accounts
Google
Connected
Unlink
Apple
Not connected
Connect
Danger Zone
Delete Account

Permanently remove your account and all associated data. This action cannot be undone.

Delete My Account

AccountSettings screen. Email/phone edits trigger verification. useMutation(api.users.*.updateProfile) for contact, Clerk for auth.


Notification Preferences
9:41
Notifications
All Notifications
Master toggle for all notification types
Delivery Methods
Push
Email
SMS
Jobs
Push
Email
SMS
New bids
Job updates
Bid accepted
Messages
Push
Email
SMS
New messages
Read receipts
Payments
Push
Email
SMS
Payment received
Payout sent
Marketing
Push
Email
SMS
Tips & guides
Product updates
Quiet Hours
Enable Quiet Hours
Silence non-urgent notifications during set times
Schedule
10:00 PM
7:00 AM

NotificationPreferences screen. Per-category matrix of push/email/SMS. useQuery(api.*.settings.getNotificationPreferences), useMutation(api.*.settings.updateNotificationPreferences).


Privacy & Security
9:41
Privacy & Security
Profile
Profile Visible
Allow others to find your profile in search
Location Sharing
Share approximate location for job matching
Your Data
Download My Data
Request a copy of all your data
Active Sessions
iPhone 15 Pro
Akron, OH · iOS 18.2
Current Session
Chrome on MacOS
Cleveland, OH · 2 hours ago
Revoke
iPad Air
Akron, OH · 5 days ago
Revoke
Blocked Users
TW
Tony Williams
Unblock
SJ
Sam Jackson
Unblock

PrivacySecurity screen. Sessions from Clerk, blocked users from Convex. useClerk().sessions, useQuery(api.users.*.getBlockedUsers).


Appearance
9:41
Appearance
Theme
Light
Dark
System
Text Size
A A
Medium (default)
Language
Language
English (US)
Accessibility
Reduce Motion
Minimize animations and transitions
High Contrast
Increase contrast for better visibility
Bold Text
Use heavier font weights throughout the app

AppearanceSettings screen. Theme stored in AsyncStorage. useTheme() from ThemeContext, persisted via AsyncStorage.setItem('theme').


Help & Support
9:41
Help & Support
Frequently Asked Questions
How do I post a job?

Tap the "Post a Job" button on your home screen. Fill in the project details, upload photos if needed, and submit. You'll start receiving bids within hours.

How does the bidding work?
Is my payment secure?
How do I cancel a job?
What is the escrow process?
Contact Us
Live Chat
Typically replies in under 5 minutes
Email Support
support@3bids.io
Phone Support
(330) 555-3243 · Mon-Fri 9-5 ET
Report a Bug
Description
Describe the issue you encountered...
Attach screenshots (optional)
Max 5 images, 10MB each
Submit Report
App Diagnostics
App Version 2.4.1
Build 347
Device iPhone 15 Pro
OS iOS 18.2
Convex Connected

HelpSupport screen. FAQ from static data, diagnostics from device info. useDeviceInfo() hook, useMutation(api.support.submitBugReport).


About & Legal
9:41
About
3bids
3 Bids. No Spam. No Games.
Version 2.4.1
Build Number 347
SDK Expo 54
Legal
Feedback
Enjoying 3bids?
We'd love to hear your feedback. Rate us on the App Store.
Rate on App Store
Follow Us

AboutLegal screen. Version from app.json, links open in-app browser. Constants.expoConfig.version, Linking.openURL() for external.


Delete Account — Modal
9:41
Account
Email Address

DeleteAccountModal bottom sheet. Button disabled until "DELETE" is typed. useMutation(api.users.*.deleteAccount), Clerk signOut().

Delete — Confirmed State
9:41
Account
Email Address

Confirmed state: "DELETE" fully typed, button becomes active. String comparison enables submit. 30-day grace period before permanent deletion.


Data Architecture
Schema Tables
posterSettings — userId, theme, fontSize, language, reduceMotion, highContrast, boldText, notifications (push/email per type)

contractorSettings — userId, theme, fontSize, language, reduceMotion, highContrast, boldText, pushTokens, notifications (push/email/sms per type), quietHoursEnabled, quietHoursStart, quietHoursEnd, serviceRadius, serviceZips

notificationPreferences — userId, userType, categories (jobs/messages/payments/marketing), channels (push/email/sms per category)

blockedUsers — blockerId, blockedId, createdAt
Index: by_blocker [blockerId]

supportTickets — userId, userType, type, description, attachments, deviceInfo, status, createdAt
Hooks & Queries
useSettings() — reads posterSettings/contractorSettings by user role
useNotificationPrefs() — reads per-category channel preferences
useTheme() — theme from ThemeContext (light/dark/system) + AsyncStorage
useDeviceInfo() — device model, OS version, app version, build

api.users.*.getSettings — fetch user settings
api.users.*.updateSettings — update theme, font, accessibility prefs
api.users.*.updateNotificationPreferences
api.users.*.getBlockedUsers
api.users.*.blockUser / unblockUser
api.users.*.deleteAccount — soft delete with 30-day grace period
api.support.submitBugReport — creates supportTicket with attachments
Notification Categories
Jobs — new_bids, job_updates, bid_accepted, bid_rejected, job_match · Messages — new_message, read_receipts · Payments — payment_received, payout_sent, escrow_funded · Marketing — tips_guides, product_updates, promotions
External Services
Clerk — Authentication, session management, 2FA, linked accounts (Google/Apple), password changes
Expo Notifications — Push token registration, FCM (Android) + APNs (iOS) delivery
AsyncStorage — Local persistence for theme, font size, accessibility preferences
Linking — Opens Terms/Privacy URLs in system browser, App Store rating
Settings Hub & Account
9:41
Settings Hub & Account
Settings Menu
Account
Notifications
Privacy
Appearance
Support
About
Account Settings
Email
james.mitchell@email.com
Phone
(330) 555-0147
Password
Last changed 14 days ago
Notifications & Privacy
9:41
Notifications & Privacy
Notification Preferences
Push Notifications
Email Updates
SMS Alerts
Marketing
Privacy & Security
Two-Factor Auth
Biometric Login
Location Services
Data Sharing
Settings Dashboard
https://app.3bids.io/settings
3Bids
Account ⌘1
Notifications ⌘2
Privacy ⌘3
Appearance ⌘4
Support ⌘5
About ⌘6
JM
James Mitchell
Homeowner
Settings ⌘,

Settings Dashboard

Verified
Email
Active
2FA
Light
Theme
v2.4.1
Version
Account Settings
Email
james.mitchell@email.com
Phone
(330) 555-0147
Password
Last changed 14 days ago
Payment Methods
Visa ending in 4242
Notification Preferences
Push Notifications
New bids, job updates, messages
Email Digest
Weekly summary of activity
SMS Alerts
Urgent updates only
Marketing
Tips, promotions, new features
Privacy & Security
Two-Factor Auth
Enabled via authenticator app
Biometric Login
Face ID / Touch ID
Profile Visibility
Visible to matched contractors
Active Sessions
2 devices currently signed in
Appearance
Theme
Light mode
Font Size
Default (16px)
Reduce Motion
Minimize animations
Support & About
FAQs
Common questions answered
Report a Bug
Send feedback to our team
Terms & Privacy Policy
3bids v2.4.1 (build 347)