You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
💡 Live Market Buzz Score for Real-Time Discovery Social Proof
#477
Add a dynamic "buzz" indicator to the customer discovery screen showing real-time market activity: checked-in vendor count, trending products, and how the market compares to its historical average. Think Google Maps "Popular Times" but vendor-specific — not just foot traffic, but what's actually available right now. This transforms discovery from static listing to live intelligence.
Market Signal
Farmish (40K+ farms) and LocalHarvest own static discovery listings. Google Maps shows generic foot traffic via "Popular Times" but charges for API access (BestTime.app is a $99/mo alternative). No competitor provides real-time VENDOR-LEVEL market intelligence. This is the competitive moat that a coordination platform can build that a static directory cannot — live operational data repackaged as customer-facing social proof.
User Signal
Customer persona Rachel needs to make confident go/no-go decisions before traveling. The PRD's north-star metric is failed-trip reduction. Existing ideas #371 (Pre-Trip Confidence Dashboard) and #395 (Vendor Attendance Track Record) address parts of this, but neither provides the real-time social proof signal that converts a browsing customer into a market visitor. The buzz score is the "Popular Times" equivalent that makes discovery screens feel alive and trustworthy.
Technical Opportunity
Markets already has vendor check-in data flowing through Firebase Realtime Database at /markets/{marketId}/vendors/{vendorId}/status. The buzz score is a read-only aggregation of existing data — no new write paths needed. The Go backend can compute historical averages from the audit log (which already records all check-in/checkout events with timestamps). Apollo Client cache means the score updates in real-time on the customer's discovery screen without polling.
Assessment
Dimension
Score
Rationale
Feasibility
high
Pure read-only aggregation of existing Firebase Realtime data. No new backend write paths. Historical baseline from audit log.
Impact
high
Core differentiator against static listing competitors. Directly serves the failed-trip reduction north-star metric.
Urgency
high
Should launch alongside or shortly after customer discovery (Epic 6) to make the discovery experience feel differentiated from day one.
Adversarial Review
Strongest objection: With low vendor adoption, a buzz score showing "1 of 20 vendors checked in" actively DISCOURAGES visits and makes the market look dead.
Rebuttal: The display adapts to adoption level. At low adoption, show absolute counts ("3 vendors confirmed") without the ratio. Only show comparative data ("busier than usual") when adoption exceeds 60% of the roster. The feature degrades gracefully — even "3 vendors confirmed for Saturday" is more information than customers currently have, which is zero. The algorithm can also suppress the score entirely below a minimum threshold.
Suggested Next Step
Define the buzz score algorithm (inputs: check-in count, product availability updates, time-of-day normalization, adoption-level display thresholds). Design the discovery card UI showing the score with adaptive display modes. Implement as a Firebase Realtime listener on the existing /markets/{marketId}/vendors path.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Summary
Add a dynamic "buzz" indicator to the customer discovery screen showing real-time market activity: checked-in vendor count, trending products, and how the market compares to its historical average. Think Google Maps "Popular Times" but vendor-specific — not just foot traffic, but what's actually available right now. This transforms discovery from static listing to live intelligence.
Market Signal
Farmish (40K+ farms) and LocalHarvest own static discovery listings. Google Maps shows generic foot traffic via "Popular Times" but charges for API access (BestTime.app is a $99/mo alternative). No competitor provides real-time VENDOR-LEVEL market intelligence. This is the competitive moat that a coordination platform can build that a static directory cannot — live operational data repackaged as customer-facing social proof.
User Signal
Customer persona Rachel needs to make confident go/no-go decisions before traveling. The PRD's north-star metric is failed-trip reduction. Existing ideas #371 (Pre-Trip Confidence Dashboard) and #395 (Vendor Attendance Track Record) address parts of this, but neither provides the real-time social proof signal that converts a browsing customer into a market visitor. The buzz score is the "Popular Times" equivalent that makes discovery screens feel alive and trustworthy.
Technical Opportunity
Markets already has vendor check-in data flowing through Firebase Realtime Database at
/markets/{marketId}/vendors/{vendorId}/status. The buzz score is a read-only aggregation of existing data — no new write paths needed. The Go backend can compute historical averages from the audit log (which already records all check-in/checkout events with timestamps). Apollo Client cache means the score updates in real-time on the customer's discovery screen without polling.Assessment
Adversarial Review
Strongest objection: With low vendor adoption, a buzz score showing "1 of 20 vendors checked in" actively DISCOURAGES visits and makes the market look dead.
Rebuttal: The display adapts to adoption level. At low adoption, show absolute counts ("3 vendors confirmed") without the ratio. Only show comparative data ("busier than usual") when adoption exceeds 60% of the roster. The feature degrades gracefully — even "3 vendors confirmed for Saturday" is more information than customers currently have, which is zero. The algorithm can also suppress the score entirely below a minimum threshold.
Suggested Next Step
Define the buzz score algorithm (inputs: check-in count, product availability updates, time-of-day normalization, adoption-level display thresholds). Design the discovery card UI showing the score with adaptive display modes. Implement as a Firebase Realtime listener on the existing
/markets/{marketId}/vendorspath.All reactions