Scoring EngineEventsCLI ToolTelegram

EventScout — Strategic Event Discovery

A discovery engine for in-person events scored across three pillars — wealth, health, and happiness. Cuts the firehose of "things happening in Vancouver" down to the handful that move the dial.

EventScout — Strategic Event Discovery preview

The Problem

I live in Vancouver. There are 200+ events in the city on any given Saturday — meetups, workshops, conferences, classes, salons, retreats. The Eventbrite/Meetup/Luma firehose is unreadable. The actual signal — “this one is worth six hours of my life” — gets buried.

EventScout was the answer for me personally and a system that I planned to generalize.

The Scoring

Three life-pillar weights, deliberately wide:

  • Wealth — events that can plausibly move career, revenue, or network in a measurable direction.
  • Health — events that improve the body, the sleep, the energy floor.
  • Happiness — events that are simply good. No strategic justification needed.

A high score on one pillar can’t override a zero on another. The system refuses to recommend a $400 conference dinner that scores 9 on Wealth and 0 on Happiness. The recommendation is the triangulation, not the maximum.

The Build

Single-file Node.js CLI (eventscout.js, ~1700 lines), zero npm dependencies, JSON-file cache. Built-in dedup that handles the same event appearing on Eventbrite + Luma + the venue’s own page. Early-bird deadline tracking that re-scores closer to the day. A Telegram digest delivered each morning with the day’s verdict in three lines.

node eventscout.js cache upcoming 14    # Events scored for the next 14 days
node eventscout.js cache earlybird      # Earlybird deadlines approaching

Why It Worked

Most event discovery is find + filter. The pillar-scored verdict made it find + choose. The difference, in operator time, was about 30 minutes a week. The difference in attendance quality — meaning the difference in events I actually showed up to and got something from — was the whole point.