Appearance
Data Visibility (Blur) ​
Purpose: Document how subscription levels control visibility for sensitive listing fields and explore functions. Audience: Product, Developer Prerequisites: blurred_fields configuration in the database.
Overview ​
- Visibility is controlled in
public.blurred_fieldsperfield_keyand plan (unauth/free/starter/pro). - The frontend applies visual masking; the backend enforces masking via the
listing_view_secureview. - Active Starter/Pro subscriptions unlock fields according to the configured matrix.
User Experience ​
- Public/Free:
- Financial/traffic fields and media can appear blurred; action buttons may be disabled/blurred.
- Starter:
- Unlocks most content fields; some media can remain blurred per configuration.
- Pro:
- Extended visibility; only explicitly protected items remain blurred.
- Admin/Owner:
- Full access, no blur.
Pages impacted ​
- Listing Detail (
/listing/:id): financial fields, screenshots, structured description sections, URLs. - Explore (
/explore): configurable filters/functions (e.g.,explore_*). - Sidebar/About Seller: certain sections can be protected (e.g.,
seller_information).
Configuration points ​
- Admin UI: Subscription Plans → Blurred Fields Manager
- DB helpers:
can_view_field, viewlisting_view_secure - Frontend mapping:
FIELD_TO_COLUMN_MAPand conditional column selection withuseSelectiveDataLoading
Related docs ​
docs/architecture/blur-policy.mddocs/operations/blur-playbook.mddocs/features/listings.mddocs/features/subscriptions.md