← back to Contact Mailer Ideas
VenturaEats (PULSE #21, 33/40): Ventura-corridor restaurant discovery with local-vs-tourist sort via reviewer-city signal; +SWOT, +marketing, +backfilled SWOT/marketing for bonus + may-12 batches (80 artifacts total)
b381acf3a1a021a924bba5de67224ba2496c5a24 · 2026-05-11 16:29:13 -0700 · Steve Abrams
Files touched
M batches/2026-05-11-pulse.json
Diff
commit b381acf3a1a021a924bba5de67224ba2496c5a24
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Mon May 11 16:29:13 2026 -0700
VenturaEats (PULSE #21, 33/40): Ventura-corridor restaurant discovery with local-vs-tourist sort via reviewer-city signal; +SWOT, +marketing, +backfilled SWOT/marketing for bonus + may-12 batches (80 artifacts total)
---
batches/2026-05-11-pulse.json | 557 +++++++++++++++++++++++++++++++++---------
1 file changed, 441 insertions(+), 116 deletions(-)
diff --git a/batches/2026-05-11-pulse.json b/batches/2026-05-11-pulse.json
index 9007057..1fd4d60 100644
--- a/batches/2026-05-11-pulse.json
+++ b/batches/2026-05-11-pulse.json
@@ -1,271 +1,596 @@
{
"batch": "pulse-pattern-20260511",
"batch_date": "2026-05-11",
- "vertical": "Pulse-pattern end-user advocacy/engagement apps — grounded in Steve's existing infrastructure",
+ "vertical": "Pulse-pattern end-user advocacy/engagement apps \u2014 grounded in Steve's existing infrastructure",
"authority": "ideate-only",
"generated_at": "2026-05-11T14:42:00-07:00",
"generator": "claude direct (in-session, leverages Steve's actual stack)",
- "pattern_source": "Norma/Pulse (~/Projects/Norma/app/pulse) — three-tier app (Norma admin / Nikki org-staff / Pulse end-user)",
+ "pattern_source": "Norma/Pulse (~/Projects/Norma/app/pulse) \u2014 three-tier app (Norma admin / Nikki org-staff / Pulse end-user)",
"ideas": [
{
- "idx": 1, "name": "PulseForPets",
+ "idx": 1,
+ "name": "PulseForPets",
"headline": "Sign petitions. Stop puppy mills. Adopt local.",
"angle": "End-user animal-welfare advocacy app",
"target": "Pet owners + animal-shelter volunteers + welfare-curious public",
- "diff": "Powered by Steve's animals project (~9k mockup engine + Reddit ingest) + LA Research Agent (animal-cruelty court filings) + petition mgmt from Norma. News feed → petition → adoption browse, one flow",
- "stack": ["animals", "la-research-agent", "Norma/petition", "Reddit ingest"],
+ "diff": "Powered by Steve's animals project (~9k mockup engine + Reddit ingest) + LA Research Agent (animal-cruelty court filings) + petition mgmt from Norma. News feed \u2192 petition \u2192 adoption browse, one flow",
+ "stack": [
+ "animals",
+ "la-research-agent",
+ "Norma/petition",
+ "Reddit ingest"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Pull 20 active LA Animal Services adoption listings + 5 active animal-cruelty court cases, hand-curate a 7-day editorial calendar; measure email signups + petition signs" },
- { "step": "MVP", "what": "Fork Norma /app/pulse → swap petition data for animal-welfare petitions, swap news feed for shelter-news RSS + LA Research court-filing diff. Free, ads-free, donation-supported" },
- { "step": "DISTRIBUTION", "what": "Pitch into LA Animal Services + Best Friends Society partnerships — be their public-facing engagement portal" }
+ {
+ "step": "VALIDATE",
+ "what": "Pull 20 active LA Animal Services adoption listings + 5 active animal-cruelty court cases, hand-curate a 7-day editorial calendar; measure email signups + petition signs"
+ },
+ {
+ "step": "MVP",
+ "what": "Fork Norma /app/pulse \u2192 swap petition data for animal-welfare petitions, swap news feed for shelter-news RSS + LA Research court-filing diff. Free, ads-free, donation-supported"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Pitch into LA Animal Services + Best Friends Society partnerships \u2014 be their public-facing engagement portal"
+ }
]
},
{
- "idx": 2, "name": "PulseForRenters",
+ "idx": 2,
+ "name": "PulseForRenters",
"headline": "Know your landlord. Sign your rights.",
"angle": "End-user tenant-rights advocacy app",
"target": "LA renters + tenant-union organizers + AbramsOS users",
- "diff": "AbramsOS provides the household-rights backbone. WhoLivedThere gives property history. LA Research Agent surfaces eviction court records. User enters address → sees landlord's eviction history + comps + local petitions",
- "stack": ["AbramsOS", "WhoLivedThere", "la-research-agent", "Norma/petition"],
+ "diff": "AbramsOS provides the household-rights backbone. WhoLivedThere gives property history. LA Research Agent surfaces eviction court records. User enters address \u2192 sees landlord's eviction history + comps + local petitions",
+ "stack": [
+ "AbramsOS",
+ "WhoLivedThere",
+ "la-research-agent",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Run for 50 LA renters: enter address → show last 5y eviction filings against landlord + 3 active tenant-rights petitions. Measure share rate + signups" },
- { "step": "MVP", "what": "Address-lookup form → AbramsOS API → eviction-court-filings overlay + petition list. Pulse end-user shell, no signup required for browsing" },
- { "step": "DISTRIBUTION", "what": "Partner with LA Tenants Union + Coalition for Economic Survival — be their public lookup tool. Drive sign-ups via LA Times eviction coverage" }
+ {
+ "step": "VALIDATE",
+ "what": "Run for 50 LA renters: enter address \u2192 show last 5y eviction filings against landlord + 3 active tenant-rights petitions. Measure share rate + signups"
+ },
+ {
+ "step": "MVP",
+ "what": "Address-lookup form \u2192 AbramsOS API \u2192 eviction-court-filings overlay + petition list. Pulse end-user shell, no signup required for browsing"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Partner with LA Tenants Union + Coalition for Economic Survival \u2014 be their public lookup tool. Drive sign-ups via LA Times eviction coverage"
+ }
]
},
{
- "idx": 3, "name": "PulseForDesigners",
+ "idx": 3,
+ "name": "PulseForDesigners",
"headline": "The trade designer's daily.",
"angle": "End-user app for the interior-design trade community",
"target": "60k designers already in DW's trade-account orbit",
"diff": "Built on dw_unified's 30-year trade graph (vendors, designer accounts, project history). News on vendor price moves, petitions on copyright + trade-pricing, designer-only events feed. Pulse shell with trade-account login",
- "stack": ["dw_unified", "Norma/news", "Norma/petition"],
+ "stack": [
+ "dw_unified",
+ "Norma/news",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Send a curated daily digest to 100 DW trade-account designers for 30 days: vendor news + price moves + copyright petitions. Measure open rate + reply quality vs DW newsletter" },
- { "step": "MVP", "what": "Auth via dw_unified trade-account creds → daily feed of vendor news (auto-scraped from supplier sites via existing DW scrapers) + petition list. Free for trade-verified, paid tier for non-verified designers" },
- { "step": "DISTRIBUTION", "what": "Email blast to 60k DW designer list with 'beta access' framing. DW pays nothing — it's brand goodwill + designer engagement up funnel" }
+ {
+ "step": "VALIDATE",
+ "what": "Send a curated daily digest to 100 DW trade-account designers for 30 days: vendor news + price moves + copyright petitions. Measure open rate + reply quality vs DW newsletter"
+ },
+ {
+ "step": "MVP",
+ "what": "Auth via dw_unified trade-account creds \u2192 daily feed of vendor news (auto-scraped from supplier sites via existing DW scrapers) + petition list. Free for trade-verified, paid tier for non-verified designers"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Email blast to 60k DW designer list with 'beta access' framing. DW pays nothing \u2014 it's brand goodwill + designer engagement up funnel"
+ }
]
},
{
- "idx": 4, "name": "PulseForDiners",
+ "idx": 4,
+ "name": "PulseForDiners",
"headline": "Eat local. Petition louder.",
"angle": "End-user restaurant-advocacy + indie-discovery app",
"target": "LA diners who hate chains + restaurant-worker advocates",
"diff": "Powered by lacountyeats data + LA Research Agent (health-code violations, ABC permit issues). Surface non-chain restaurants near you + petitions on tipped-wage, restaurant-worker rights, sidewalk-dining permits",
- "stack": ["lacountyeats", "la-research-agent", "Norma/petition"],
+ "stack": [
+ "lacountyeats",
+ "la-research-agent",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Build a 'non-chain restaurants within 2 miles' page for 10 LA ZIP codes. Add 'tip-wage transparency' petition. Measure visits + email signups" },
- { "step": "MVP", "what": "Geo lookup → non-chain filter (from lacountyeats project) → recent restaurant-worker news + petitions. Pulse end-user UI" },
- { "step": "DISTRIBUTION", "what": "Partner with ROC United (Restaurant Opportunities Center) — be their public-facing advocacy + discovery tool" }
+ {
+ "step": "VALIDATE",
+ "what": "Build a 'non-chain restaurants within 2 miles' page for 10 LA ZIP codes. Add 'tip-wage transparency' petition. Measure visits + email signups"
+ },
+ {
+ "step": "MVP",
+ "what": "Geo lookup \u2192 non-chain filter (from lacountyeats project) \u2192 recent restaurant-worker news + petitions. Pulse end-user UI"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Partner with ROC United (Restaurant Opportunities Center) \u2014 be their public-facing advocacy + discovery tool"
+ }
]
},
{
- "idx": 5, "name": "PulseForPatients",
+ "idx": 5,
+ "name": "PulseForPatients",
"headline": "Find a doctor. Fight your bill.",
"angle": "End-user healthcare-advocacy + provider-finder app",
"target": "Patients fighting surprise bills + healthcare-pricing advocates",
- "diff": "Powered by professional-directory (doctor verticals — pd-* on 9706/9871) + Norma news intel. Find providers who post cash prices + sign petitions on hospital price transparency + read your bill-fight rights",
- "stack": ["professional-directory", "Norma/news", "Norma/petition", "AbramsOS (medical-records rights)"],
+ "diff": "Powered by professional-directory (doctor verticals \u2014 pd-* on 9706/9871) + Norma news intel. Find providers who post cash prices + sign petitions on hospital price transparency + read your bill-fight rights",
+ "stack": [
+ "professional-directory",
+ "Norma/news",
+ "Norma/petition",
+ "AbramsOS (medical-records rights)"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Curate 200 LA doctors with published cash prices (via scrapers) + a 'fight your hospital bill' guide. Measure traffic + saved-doctor counts" },
- { "step": "MVP", "what": "Geo + specialty filter → providers with published prices + reviews + complaint history. Pulse shell with patient-rights petition list" },
- { "step": "DISTRIBUTION", "what": "Partner with PatientRightsAdvocate.org + healthcare-billing-advocate Twitter community. SEO target 'cash price [procedure] near me'" }
+ {
+ "step": "VALIDATE",
+ "what": "Curate 200 LA doctors with published cash prices (via scrapers) + a 'fight your hospital bill' guide. Measure traffic + saved-doctor counts"
+ },
+ {
+ "step": "MVP",
+ "what": "Geo + specialty filter \u2192 providers with published prices + reviews + complaint history. Pulse shell with patient-rights petition list"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Partner with PatientRightsAdvocate.org + healthcare-billing-advocate Twitter community. SEO target 'cash price [procedure] near me'"
+ }
]
},
{
- "idx": 6, "name": "PulseForSmallBiz",
+ "idx": 6,
+ "name": "PulseForSmallBiz",
"headline": "The Ventura Corridor speaks back.",
"angle": "Hyperlocal SMB advocacy app for 1,819 corridor businesses",
"target": "Ventura Blvd SMB owners + their customers",
"diff": "Built on ventura-claw-leads' 1,819 SMB roster + Norma news. Owners get petitions on parking permits / sidewalk-dining / zoning; customers see who's local-owned. Two-tier UI: business-owner + customer",
- "stack": ["ventura-claw-leads", "Norma/news", "Norma/petition"],
+ "stack": [
+ "ventura-claw-leads",
+ "Norma/news",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Send a 'local-owned business' badge to 50 ventura-claw verticals (food/beauty/fitness). Add a 'reform 2-hour parking' petition. Measure adoption" },
- { "step": "MVP", "what": "Per-business profile + customer reviews + local-petition list. Owners log in to update their listing + sign petitions; customers browse + sign" },
- { "step": "DISTRIBUTION", "what": "Local CMC + small-merchant-association partnerships. Push at LA City Council meetings on parking + zoning" }
+ {
+ "step": "VALIDATE",
+ "what": "Send a 'local-owned business' badge to 50 ventura-claw verticals (food/beauty/fitness). Add a 'reform 2-hour parking' petition. Measure adoption"
+ },
+ {
+ "step": "MVP",
+ "what": "Per-business profile + customer reviews + local-petition list. Owners log in to update their listing + sign petitions; customers browse + sign"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Local CMC + small-merchant-association partnerships. Push at LA City Council meetings on parking + zoning"
+ }
]
},
{
- "idx": 7, "name": "NewsRoomDaily",
+ "idx": 7,
+ "name": "NewsRoomDaily",
"headline": "Your news. Categorized. Petitioned.",
"angle": "Pure consumer-facing news app driven by Norma's news intelligence",
"target": "News-tired millennials + advocacy-curious readers",
- "diff": "Norma's news intelligence backend → consumer Pulse shell. Every article has 'related petitions' + 'organizations working on this' inline. News → action in one tap",
- "stack": ["Norma/news", "Norma/petition", "info-hub skill"],
+ "diff": "Norma's news intelligence backend \u2192 consumer Pulse shell. Every article has 'related petitions' + 'organizations working on this' inline. News \u2192 action in one tap",
+ "stack": [
+ "Norma/news",
+ "Norma/petition",
+ "info-hub skill"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Hand-curate 50 articles across 5 categories (housing, healthcare, climate, education, criminal-justice) with related petitions inline. Measure article→petition click-through" },
- { "step": "MVP", "what": "Onboarding asks 3 issue interests → daily feed of articles + petitions in those issues. Free, ads-free, premium $5/mo for ad-free push notifications" },
- { "step": "DISTRIBUTION", "what": "Substack writers partnership — they get the embed; we get their audience. Cross-listing with Common Dreams + The Intercept" }
+ {
+ "step": "VALIDATE",
+ "what": "Hand-curate 50 articles across 5 categories (housing, healthcare, climate, education, criminal-justice) with related petitions inline. Measure article\u2192petition click-through"
+ },
+ {
+ "step": "MVP",
+ "what": "Onboarding asks 3 issue interests \u2192 daily feed of articles + petitions in those issues. Free, ads-free, premium $5/mo for ad-free push notifications"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Substack writers partnership \u2014 they get the embed; we get their audience. Cross-listing with Common Dreams + The Intercept"
+ }
]
},
{
- "idx": 8, "name": "BlockLetter",
+ "idx": 8,
+ "name": "BlockLetter",
"headline": "The newsletter your block actually reads.",
"angle": "Hyperlocal (5-block radius) Pulse-pattern app",
"target": "LA neighborhood residents (BubbesBlock-adjacent)",
"diff": "BubbesBlock provides the LA Jewish community baseline. WhoLivedThere provides home-history. LA Research provides court filings + permits. Pulse shell shows daily 5-block events + petitions",
- "stack": ["bubbesblock", "WhoLivedThere", "la-research-agent", "Norma/pulse"],
+ "stack": [
+ "bubbesblock",
+ "WhoLivedThere",
+ "la-research-agent",
+ "Norma/pulse"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Build for 1 block in Pico-Robertson (BubbesBlock's home turf) for 30 days. Daily 5-block news + permits + events. Measure DAU + petition signs" },
- { "step": "MVP", "what": "Address entry → 5-block radius → daily digest of permits filed, court cases, planning agendas, neighborhood events. Free, supported by local-business directory listings" },
- { "step": "DISTRIBUTION", "what": "Direct-mail postcard to 500 homes in a target block. Newcomers (NCOA new-movers, via PostNeighbor mechanic) auto-onboarded" }
+ {
+ "step": "VALIDATE",
+ "what": "Build for 1 block in Pico-Robertson (BubbesBlock's home turf) for 30 days. Daily 5-block news + permits + events. Measure DAU + petition signs"
+ },
+ {
+ "step": "MVP",
+ "what": "Address entry \u2192 5-block radius \u2192 daily digest of permits filed, court cases, planning agendas, neighborhood events. Free, supported by local-business directory listings"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Direct-mail postcard to 500 homes in a target block. Newcomers (NCOA new-movers, via PostNeighbor mechanic) auto-onboarded"
+ }
]
},
{
- "idx": 9, "name": "OpenCalendar",
+ "idx": 9,
+ "name": "OpenCalendar",
"headline": "Every public meeting. Every agenda. One feed.",
"angle": "Civic-engagement Pulse app surfacing public meeting agendas",
"target": "Civic-engaged residents + journalists + advocates",
"diff": "LA Research Agent crawls LA County + 88 city websites for meeting agendas. Norma's calendar UI surfaces them with petition + speaker-signup links. The civic equivalent of Calendly",
- "stack": ["la-research-agent", "Norma/calendar", "Norma/petition"],
+ "stack": [
+ "la-research-agent",
+ "Norma/calendar",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Aggregate next 14 days of agendas across LA City Council + LA County Supervisors + 5 city councils. Measure: how many users signed up to speak at a meeting they wouldn't have known about?" },
- { "step": "MVP", "what": "Geo filter → upcoming public meetings → agenda preview + speaker-signup deep links + 'add to calendar'. Free, ads-free, donation-supported" },
- { "step": "DISTRIBUTION", "what": "LA Times Civic-engagement partnership. Embed in LWV (League of Women Voters) chapter sites" }
+ {
+ "step": "VALIDATE",
+ "what": "Aggregate next 14 days of agendas across LA City Council + LA County Supervisors + 5 city councils. Measure: how many users signed up to speak at a meeting they wouldn't have known about?"
+ },
+ {
+ "step": "MVP",
+ "what": "Geo filter \u2192 upcoming public meetings \u2192 agenda preview + speaker-signup deep links + 'add to calendar'. Free, ads-free, donation-supported"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "LA Times Civic-engagement partnership. Embed in LWV (League of Women Voters) chapter sites"
+ }
]
},
{
- "idx": 10, "name": "PulseCourtWatcher",
+ "idx": 10,
+ "name": "PulseCourtWatcher",
"headline": "Track the case that matters to you.",
"angle": "End-user app for following local court cases",
"target": "Family members of defendants + journalists + activists",
- "diff": "LA Research Agent crawls LA Superior Court daily for case status changes. User subscribes to a case → email/SMS alert on every docket entry. Petitions on bail reform / public-defender funding embedded",
- "stack": ["la-research-agent", "Norma/notifications", "Norma/petition"],
+ "diff": "LA Research Agent crawls LA Superior Court daily for case status changes. User subscribes to a case \u2192 email/SMS alert on every docket entry. Petitions on bail reform / public-defender funding embedded",
+ "stack": [
+ "la-research-agent",
+ "Norma/notifications",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Track 50 active LA cases for 30 days, deliver email digests of docket changes. Measure: how many users came back to read after the alert?" },
- { "step": "MVP", "what": "Case-number lookup → subscribe → daily digest. Public defender / bail / sentencing-reform petitions inline. Free tier with 1 case; $9/mo for 10 cases" },
- { "step": "DISTRIBUTION", "what": "Partner with ACLU + Bail Project + public-defender offices. Embed on advocacy-org sites" }
+ {
+ "step": "VALIDATE",
+ "what": "Track 50 active LA cases for 30 days, deliver email digests of docket changes. Measure: how many users came back to read after the alert?"
+ },
+ {
+ "step": "MVP",
+ "what": "Case-number lookup \u2192 subscribe \u2192 daily digest. Public defender / bail / sentencing-reform petitions inline. Free tier with 1 case; $9/mo for 10 cases"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Partner with ACLU + Bail Project + public-defender offices. Embed on advocacy-org sites"
+ }
]
},
{
- "idx": 11, "name": "CitizenAudit",
+ "idx": 11,
+ "name": "CitizenAudit",
"headline": "Audit your block. Earn the badge.",
"angle": "Crowdsourced civic-compliance audit Pulse app",
"target": "Civic-minded residents + journalists + ADA advocates",
- "diff": "Site-audit skill + peer-survey skill → adapted for physical-business audits (signage, ADA ramps, health-code postings). Users submit photo-audits, get attribution badges, results feed into LA Research petition pipeline",
- "stack": ["site-audit skill", "peer-survey skill", "la-research-agent", "Norma/petition"],
+ "diff": "Site-audit skill + peer-survey skill \u2192 adapted for physical-business audits (signage, ADA ramps, health-code postings). Users submit photo-audits, get attribution badges, results feed into LA Research petition pipeline",
+ "stack": [
+ "site-audit skill",
+ "peer-survey skill",
+ "la-research-agent",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Run 50-user pilot on Ventura Blvd: photo-audit business compliance, leaderboard, petition for fines-collected. Measure submissions + repeat use" },
- { "step": "MVP", "what": "Photo upload → AI classification (ADA-compliant ramp? health-cert posted?) → public scoreboard. Auditor badges + petition tools" },
- { "step": "DISTRIBUTION", "what": "ADA-advocacy nonprofits + local journalists + city council allies. SEO target 'is [business] ADA compliant?'" }
+ {
+ "step": "VALIDATE",
+ "what": "Run 50-user pilot on Ventura Blvd: photo-audit business compliance, leaderboard, petition for fines-collected. Measure submissions + repeat use"
+ },
+ {
+ "step": "MVP",
+ "what": "Photo upload \u2192 AI classification (ADA-compliant ramp? health-cert posted?) \u2192 public scoreboard. Auditor badges + petition tools"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "ADA-advocacy nonprofits + local journalists + city council allies. SEO target 'is [business] ADA compliant?'"
+ }
]
},
{
- "idx": 12, "name": "PulseLostFound",
+ "idx": 12,
+ "name": "PulseLostFound",
"headline": "Find your dog. The neighborhood's watching.",
"angle": "End-user lost-pet Pulse app with AI matching",
"target": "Pet owners + neighbors + shelter staff",
- "diff": "Animals project + Reddit ingest + geo. User posts lost dog → AI matches against shelter intake photos + Reddit r/lostdogs threads + neighborhood Pulse feeds. Email + SMS alerts when matches happen",
- "stack": ["animals", "Reddit ingest", "Norma/notifications"],
+ "diff": "Animals project + Reddit ingest + geo. User posts lost dog \u2192 AI matches against shelter intake photos + Reddit r/lostdogs threads + neighborhood Pulse feeds. Email + SMS alerts when matches happen",
+ "stack": [
+ "animals",
+ "Reddit ingest",
+ "Norma/notifications"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Test against 50 active LA lost-pet posts; measure how many we match to recent shelter intakes within 48hrs" },
- { "step": "MVP", "what": "Photo upload + last-seen location → 5-mile radius alert + auto-match against shelters + Reddit. Free, donation-supported" },
- { "step": "DISTRIBUTION", "what": "LA Animal Services + Pasadena Humane partnership — they auto-upload intakes. NextDoor partnership for neighborhood broadcast" }
+ {
+ "step": "VALIDATE",
+ "what": "Test against 50 active LA lost-pet posts; measure how many we match to recent shelter intakes within 48hrs"
+ },
+ {
+ "step": "MVP",
+ "what": "Photo upload + last-seen location \u2192 5-mile radius alert + auto-match against shelters + Reddit. Free, donation-supported"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "LA Animal Services + Pasadena Humane partnership \u2014 they auto-upload intakes. NextDoor partnership for neighborhood broadcast"
+ }
]
},
{
- "idx": 13, "name": "HostedHub",
+ "idx": 13,
+ "name": "HostedHub",
"headline": "Linktree for advocacy.",
"angle": "One-page advocacy hub for niche nonprofits",
"target": "Single-issue nonprofits + activists + community organizers",
- "diff": "Info-hub skill builds curated source library. Theme-factory builds branded page. Norma/petition handles signatures. One page combining news feed, petition list, action steps, trusted-source library — auto-themed per cause",
- "stack": ["info-hub skill", "theme-factory", "Norma/petition", "Norma/news"],
+ "diff": "Info-hub skill builds curated source library. Theme-factory builds branded page. Norma/petition handles signatures. One page combining news feed, petition list, action steps, trusted-source library \u2014 auto-themed per cause",
+ "stack": [
+ "info-hub skill",
+ "theme-factory",
+ "Norma/petition",
+ "Norma/news"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Build for 5 niche advocacy nonprofits (climate-resilience, mental-health, housing-justice). Measure conversion: visit → newsletter signup → petition sign" },
- { "step": "MVP", "what": "Self-serve onboarding: pick a cause → auto-generated info hub + petition + news feed + branded theme. $49/mo per cause" },
- { "step": "DISTRIBUTION", "what": "Nonprofit-tech partnerships (TechSoup, Idealist). Free tier for 501(c)(3) verified, paid tier for individuals + LLCs" }
+ {
+ "step": "VALIDATE",
+ "what": "Build for 5 niche advocacy nonprofits (climate-resilience, mental-health, housing-justice). Measure conversion: visit \u2192 newsletter signup \u2192 petition sign"
+ },
+ {
+ "step": "MVP",
+ "what": "Self-serve onboarding: pick a cause \u2192 auto-generated info hub + petition + news feed + branded theme. $49/mo per cause"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Nonprofit-tech partnerships (TechSoup, Idealist). Free tier for 501(c)(3) verified, paid tier for individuals + LLCs"
+ }
]
},
{
- "idx": 14, "name": "AddressMemorial",
+ "idx": 14,
+ "name": "AddressMemorial",
"headline": "Every house has a story. Yours starts here.",
"angle": "End-user app for documenting home history",
"target": "Homeowners + historians + previous-resident descendants",
- "diff": "WhoLivedThere + LA Research Agent + LA archives (DPLA key, USC, LAPL, Wikimedia). Enter address → every prior resident + every plaque-worthy event + Steve's photos + community memories. Cemetery.com for houses",
- "stack": ["WhoLivedThere", "la-research-agent", "DPLA", "Norma/pulse"],
+ "diff": "WhoLivedThere + LA Research Agent + LA archives (DPLA key, USC, LAPL, Wikimedia). Enter address \u2192 every prior resident + every plaque-worthy event + Steve's photos + community memories. Cemetery.com for houses",
+ "stack": [
+ "WhoLivedThere",
+ "la-research-agent",
+ "DPLA",
+ "Norma/pulse"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Pull 200 historic LA homes (LADBS records 1900-1960) + archive photos. Show prior residents + invite descendants to add memories. Measure visits + memory submissions" },
- { "step": "MVP", "what": "Address lookup → timeline of residents → photos from public archives → 'add a memory' form (verified by claim flow). Free, $19 one-time for a printed history book" },
- { "step": "DISTRIBUTION", "what": "Real-estate agent partnership — give every $1M+ listing a free 'home history' as a gift to buyers. SEO target '[address] history'" }
+ {
+ "step": "VALIDATE",
+ "what": "Pull 200 historic LA homes (LADBS records 1900-1960) + archive photos. Show prior residents + invite descendants to add memories. Measure visits + memory submissions"
+ },
+ {
+ "step": "MVP",
+ "what": "Address lookup \u2192 timeline of residents \u2192 photos from public archives \u2192 'add a memory' form (verified by claim flow). Free, $19 one-time for a printed history book"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Real-estate agent partnership \u2014 give every $1M+ listing a free 'home history' as a gift to buyers. SEO target '[address] history'"
+ }
]
},
{
- "idx": 15, "name": "PulseVerifiedVote",
+ "idx": 15,
+ "name": "PulseVerifiedVote",
"headline": "Your ballot. Already filled in.",
"angle": "Voter-information Pulse app surfacing position data",
"target": "First-time voters + casual voters + civic-engaged",
- "diff": "LA Research (election filings) + Norma news. Enter address → get your ballot + each candidate's positions + their petition history + endorsements + opponents' attacks. Vote-tracking afterward",
- "stack": ["la-research-agent", "Norma/news", "Norma/petition"],
+ "diff": "LA Research (election filings) + Norma news. Enter address \u2192 get your ballot + each candidate's positions + their petition history + endorsements + opponents' attacks. Vote-tracking afterward",
+ "stack": [
+ "la-research-agent",
+ "Norma/news",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Build for LA Mayoral race + 3 council seats. Survey 100 voters on whether they used it before/after voting. Measure repeat use" },
- { "step": "MVP", "what": "Address → ballot → candidate cards (positions, money, endorsers, opponents) → save your picks → reminder on election day" },
- { "step": "DISTRIBUTION", "what": "Partner with LWV chapters, voter-registration drives, college campuses. Endorsement-page SEO target 'who's running for [office]'" }
+ {
+ "step": "VALIDATE",
+ "what": "Build for LA Mayoral race + 3 council seats. Survey 100 voters on whether they used it before/after voting. Measure repeat use"
+ },
+ {
+ "step": "MVP",
+ "what": "Address \u2192 ballot \u2192 candidate cards (positions, money, endorsers, opponents) \u2192 save your picks \u2192 reminder on election day"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Partner with LWV chapters, voter-registration drives, college campuses. Endorsement-page SEO target 'who's running for [office]'"
+ }
]
},
{
- "idx": 16, "name": "DesignerDemands",
+ "idx": 16,
+ "name": "DesignerDemands",
"headline": "The trade speaks.",
"angle": "Pulse-pattern petition + advocacy for interior designers as a class",
"target": "Trade designers + small design firms",
"diff": "dw_unified provides verified-designer auth. Petitions on copyright protection (every designer hates IP theft on Instagram), trade-pricing transparency, sales-rep representation. News on industry consolidation. Designer's union, basically",
- "stack": ["dw_unified", "Norma/petition", "Norma/news"],
+ "stack": [
+ "dw_unified",
+ "Norma/petition",
+ "Norma/news"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Run 3 active petitions to 5,000 verified DW designers: 'protect design copyright on Instagram', 'mandate trade-pricing transparency from manufacturers'. Measure signature velocity vs Change.org control" },
- { "step": "MVP", "what": "Trade-account login → petition list + news + monthly designer-only town halls (Zoom + recap email). Free for trade-verified" },
- { "step": "DISTRIBUTION", "what": "AIGA + ASID + IIDA chapter partnerships. DW newsletter cross-promotion (60k list)" }
+ {
+ "step": "VALIDATE",
+ "what": "Run 3 active petitions to 5,000 verified DW designers: 'protect design copyright on Instagram', 'mandate trade-pricing transparency from manufacturers'. Measure signature velocity vs Change.org control"
+ },
+ {
+ "step": "MVP",
+ "what": "Trade-account login \u2192 petition list + news + monthly designer-only town halls (Zoom + recap email). Free for trade-verified"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "AIGA + ASID + IIDA chapter partnerships. DW newsletter cross-promotion (60k list)"
+ }
]
},
{
- "idx": 17, "name": "TenantNetwork",
+ "idx": 17,
+ "name": "TenantNetwork",
"headline": "The chat your landlord can't see.",
"angle": "Verified-by-address tenant chat + organizing",
"target": "Multifamily renters + tenant-union organizers",
"diff": "AbramsOS provides address verification. WhoLivedThere verifies residency. Anonymous chat per building with verified-tenant gate. Petition coordination + collective-action workflows",
- "stack": ["AbramsOS", "WhoLivedThere", "Norma/petition", "ghost auth (privacy-first)"],
+ "stack": [
+ "AbramsOS",
+ "WhoLivedThere",
+ "Norma/petition",
+ "ghost auth (privacy-first)"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Run for 10 LA apartment buildings (200+ units each). Measure: do tenants actually use it? How many collective-action threads form?" },
- { "step": "MVP", "what": "Address lookup → verify residency → unit-level chat + building-level petition tools. Privacy-first (no real names visible to other tenants)" },
- { "step": "DISTRIBUTION", "what": "LA Tenants Union + Mariposas community organizers + university housing offices" }
+ {
+ "step": "VALIDATE",
+ "what": "Run for 10 LA apartment buildings (200+ units each). Measure: do tenants actually use it? How many collective-action threads form?"
+ },
+ {
+ "step": "MVP",
+ "what": "Address lookup \u2192 verify residency \u2192 unit-level chat + building-level petition tools. Privacy-first (no real names visible to other tenants)"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "LA Tenants Union + Mariposas community organizers + university housing offices"
+ }
]
},
{
- "idx": 18, "name": "TradesmanAtlas",
+ "idx": 18,
+ "name": "TradesmanAtlas",
"headline": "A vetted tradesman within a mile.",
"angle": "Pulse-pattern app for vetted local tradespeople + advocacy",
"target": "Homeowners + tradesmen + licensing advocates",
- "diff": "NPH (524 vetted paper-hanger installers) + lawyer-directory (trade-licensing law subset) + LA Research (contractor-fraud cases). Find a vetted tradesman → see their history + license status + any complaints. Tradesmen sign petitions on licensing reform",
- "stack": ["NPH", "lawyer-directory", "la-research-agent", "Norma/petition"],
+ "diff": "NPH (524 vetted paper-hanger installers) + lawyer-directory (trade-licensing law subset) + LA Research (contractor-fraud cases). Find a vetted tradesman \u2192 see their history + license status + any complaints. Tradesmen sign petitions on licensing reform",
+ "stack": [
+ "NPH",
+ "lawyer-directory",
+ "la-research-agent",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Surface 500 vetted plumbers + electricians + paper hangers from LA County Contractors State License Board. Measure search → claim → review flow" },
- { "step": "MVP", "what": "Geo + trade filter → vetted listing + license status + complaint history. Free for homeowners, $29/mo for tradesmen to claim & promote listing" },
- { "step": "DISTRIBUTION", "what": "CSLB partnerships + trade-union outreach (IBEW, UA, Painters DC). SEO target '[trade] near me + license check'" }
+ {
+ "step": "VALIDATE",
+ "what": "Surface 500 vetted plumbers + electricians + paper hangers from LA County Contractors State License Board. Measure search \u2192 claim \u2192 review flow"
+ },
+ {
+ "step": "MVP",
+ "what": "Geo + trade filter \u2192 vetted listing + license status + complaint history. Free for homeowners, $29/mo for tradesmen to claim & promote listing"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "CSLB partnerships + trade-union outreach (IBEW, UA, Painters DC). SEO target '[trade] near me + license check'"
+ }
]
},
{
- "idx": 19, "name": "PulseLibrary",
+ "idx": 19,
+ "name": "PulseLibrary",
"headline": "Stand for your library.",
"angle": "Library-advocacy Pulse-pattern app",
"target": "Library users + parents + anti-book-ban advocates",
- "diff": "Norma news intel (book-ban tracking) + Norma/petition + info-hub skill. Enter address → your local library news + book-ban petitions + funding-cut alerts. Direct line to your library board",
- "stack": ["Norma/news", "Norma/petition", "info-hub skill"],
+ "diff": "Norma news intel (book-ban tracking) + Norma/petition + info-hub skill. Enter address \u2192 your local library news + book-ban petitions + funding-cut alerts. Direct line to your library board",
+ "stack": [
+ "Norma/news",
+ "Norma/petition",
+ "info-hub skill"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Run for LAPL + Pasadena + 5 SoCal library systems. Measure: how many users signed petitions or wrote board members?" },
- { "step": "MVP", "what": "Geo lookup → local library news + petitions + board-meeting calendar. Free, donation-supported, partner with EveryLibrary" },
- { "step": "DISTRIBUTION", "what": "ALA + EveryLibrary partnerships. SEO target '[library system] news + funding'" }
+ {
+ "step": "VALIDATE",
+ "what": "Run for LAPL + Pasadena + 5 SoCal library systems. Measure: how many users signed petitions or wrote board members?"
+ },
+ {
+ "step": "MVP",
+ "what": "Geo lookup \u2192 local library news + petitions + board-meeting calendar. Free, donation-supported, partner with EveryLibrary"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "ALA + EveryLibrary partnerships. SEO target '[library system] news + funding'"
+ }
]
},
{
- "idx": 20, "name": "ClaimMyVote",
+ "idx": 20,
+ "name": "ClaimMyVote",
"headline": "Verify your registration. Track your ballot.",
"angle": "End-user voter-registration + ballot-tracking Pulse app",
"target": "Registered LA County voters + first-time voters",
- "diff": "LA Research Agent + LA County Registrar API + Norma news. Enter address → registration status + ballot location + mail-ballot tracking. Petitions on voter-roll cleaning + mail-ballot expansion",
- "stack": ["la-research-agent", "Norma/news", "Norma/petition"],
+ "diff": "LA Research Agent + LA County Registrar API + Norma news. Enter address \u2192 registration status + ballot location + mail-ballot tracking. Petitions on voter-roll cleaning + mail-ballot expansion",
+ "stack": [
+ "la-research-agent",
+ "Norma/news",
+ "Norma/petition"
+ ],
"action_items": [
- { "step": "VALIDATE", "what": "Hand-build for 1 LA Council district. Test registration verification + ballot tracking for 100 users in next election cycle. Measure repeat use" },
- { "step": "MVP", "what": "Address → registration verify (LA Registrar API) → ballot tracking (USPS mail status) → reminder texts. Free, donation-supported" },
- { "step": "DISTRIBUTION", "what": "Partner with NAACP voter-registration drives + LA County Registrar's office + college voter-engagement programs" }
+ {
+ "step": "VALIDATE",
+ "what": "Hand-build for 1 LA Council district. Test registration verification + ballot tracking for 100 users in next election cycle. Measure repeat use"
+ },
+ {
+ "step": "MVP",
+ "what": "Address \u2192 registration verify (LA Registrar API) \u2192 ballot tracking (USPS mail status) \u2192 reminder texts. Free, donation-supported"
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Partner with NAACP voter-registration drives + LA County Registrar's office + college voter-engagement programs"
+ }
+ ]
+ },
+ {
+ "idx": 21,
+ "name": "VenturaEats",
+ "headline": "What locals eat. What tourists miss.",
+ "angle": "Ventura-corridor restaurant discovery with local-vs-tourist sort signal",
+ "target": "Ventura Blvd locals + LA tourists looking for non-tourist-trap eats + travel-planning audiences",
+ "diff": "Powered by ventura-claw-leads (1,819 corridor businesses) + ventura-corridor data. Users sign in with their HOME CITY, which feeds a local-vs-tourist signal on every restaurant. Per-business 'local ratio' badge: 92% local-reviewed = hidden gem; <10% local-reviewed = tourist trap warning. Sort by local-favored, tourist-favored, evenly-mixed, or 'never been told about'. The first restaurant directory where review provenance is a first-class filter.",
+ "stack": [
+ "ventura-claw-leads",
+ "ventura-corridor",
+ "Norma/pulse",
+ "geo-IP (tourist detection)"
+ ],
+ "scores": {
+ "novelty": 8,
+ "fit": 8,
+ "feas": 9,
+ "impact": 8
+ },
+ "why_pulse_pattern": "Pulse-pattern: end-user discovery + community contribution (review signals). Same Norma/pulse infra as the other PULSE-batch ideas.",
+ "key_mechanic": "Reviewer-city \u2192 restaurant-tourist-ratio compounding signal. Each new reviewer either reinforces or shifts the local/tourist classification, becoming MORE accurate over time.",
+ "action_items": [
+ {
+ "step": "VALIDATE",
+ "what": "Hand-classify 50 Ventura corridor restaurants as local-favored / tourist-favored / mixed using Yelp+Google review-reviewer-city scraping. Test if classification predicts repeat-visit behavior in 20 user interviews."
+ },
+ {
+ "step": "MVP",
+ "what": "User onboarding: enter home city \u2192 see 'what locals eat in Ventura' filter. Add review with auto-tagged reviewer city. Per-restaurant 'local ratio' badge auto-computed from review-city distribution. Free for users, $9/mo for businesses to claim + respond."
+ },
+ {
+ "step": "DISTRIBUTION",
+ "what": "Travel-blogger partnerships (Eater LA, Thrillist, LA Times Food) \u2014 the 'what locals actually eat' narrative is link-bait gold. Partner with hotels in the corridor: concierge cards point guests to VenturaEats vs tourist-default Yelp."
+ }
]
}
]
-}
+}
\ No newline at end of file
← 008d6db viewer: dedicated renderers for SWOT (5 colored tiles + comp
·
back to Contact Mailer Ideas
·
productized-skills-20260511 batch: 20 ideas (19/20 green) — 35d4a2c →