opportunity radar on public events

Live

Upcoming moments, scored against a profile, with the reasons shown.

MomentRadar watches public calendars, feeds, ticketing APIs and event pages for what is coming in the next few months, and scores each event against a profile: a brand with audiences, industries and denied topics, or a household described only by age ranges and interests. Every score comes with its breakdown, every brief separates facts from assumptions, and every AI call is logged. The business product runs at momentradar.tech; MyMoment, the consumer vertical for individuals and families, runs on the same engine at mymoment.tech. Both have been live in early access since August 2026; the paid launch is still gated.

I own the product and platform architecture: the spec-first repository, the two-profile-type model on one engine, the source and AI contracts, the operator console, and the public presentation.

momentradar.tech
stagelive since 2026-08-10; early access, paid launch gated
profilesBrandProfile (B2B) · PersonalProfile (MyMoment)
sources18 built-in connectors + a crawler · tiers 1–4
deliverydashboard · iCal · Telegram · Companion chat · read-only MCP

Project images

Public sitemomentradar.tech in early access: the pitch, the free entry, and the banner that says data, pricing and features may change before the production launch.
Coverage pageGenerated from what the platform actually ingested, not from a promise: on 12 September 2026, 1,701 upcoming events across 51 Romanian counties and six categories.
MyMomentThe consumer vertical at mymoment.tech, Romanian first: a quieter radar for the people in your life, with the privacy line under the first action.
MyMoment on a phoneThe same page at 390 px: one column, the offer, and the line about what is never asked for.

What we are building

One engine, two profile types

An event is scored once, then matched per profile. A brand profile carries audiences, industries, tone, preferred channels and a hard list of denied topics. A personal profile is a household: up to eight personas, each an age range plus interests plus things to avoid, with a city and a way of getting around. The two types share the registry, the pipeline and the audit trail, and the registry is built to take more.

Sources you can audit

Eighteen built-in connectors and a sitemap-driven crawler. Deterministic ones parse iCal, JSON-LD, h-event, JSON Feed, CKAN portals, Eventbrite, Ticketmaster, TheSportsDB, GitHub releases, the F1 calendar, Snapshot governance, The Events Calendar, ETHGlobal, and static holiday, crypto and tech-conference tables; RSS and structured HTML go through AI extraction with a synthesised recipe. Every source sits in a tier from official to experimental, and a trust score from 0 to 100 follows its drop, correction and duplicate rates.

Scores with a breakdown

Rule-based features are computed first: lead time, how many sources agree, their credibility, search velocity. AI then scores eight axes, from engagement and timing to confidence and risk, with a brand-fit overlay for businesses and named dimensions for households: persona fit, age appropriateness, schedule, mobility, language, timing. The headline number is reproducible from the sub-scores on screen.

MyMoment, shipped

The consumer vertical, Romanian first with an English toggle. It never asks for names, dates of birth, schools, photos or exact locations; nicknames stay in the interface and are stripped in code before any AI call; only adults hold accounts. Plans are listed publicly on both sites, marked as subject to change before the production launch; paid sign-up is not open yet.

How it works

A model-agnostic gateway with an audit trail

Business code never imports a model provider; every call goes through one gateway that can switch vendors per task. Prompts are versioned files, 28 registered today, never edited in place, each with pinned golden cases. Every call is logged with its model, prompt version, tokens, cost and latency, and structured output is validated against a schema before it is used. For personal profiles the PII boundary sits at the gateway entry, so the model only ever sees age ranges and interests.

Refusals are enforced on the server

Six categories are refused outright when a brand profile or a source is created: gambling, adult content, drugs, weapons, child sexual abuse material, and criminal services. The gate is a deterministic deny-list that returns HTTP 422 before any AI work is paid for; there is no operator override and no per-team allow-list. Political, conflict, tragedy and medical moments go to a human review queue and never trigger an alert on their own.

Three ways out, none of them a second engine

Telegram carries staged alerts at 60, 30, 14 and 7 days, plus a weekly digest, each with an idempotency key so nothing is sent twice. The Companion is a chat inside the product that calls typed internal endpoints only, no web search, and cites the evidence row behind every claim. A read-only MCP server gives Claude, ChatGPT or Cursor the same scoped reads; it cannot write, score or bill.