尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
An AI agent that watches the artists you follow and tells you the moment any of them announces a show in India —
Bengaluru first — with the venue, date, early-bird status and deadline, so you can buy the same day.
Screenshots: placeholder — Radar (dark/light), show drawer, Activity live log, map view.查看完整 README ↗An AI agent that watches the artists you follow and tells you the moment any of them announces a show in India — Bengaluru first — with the venue, date, early-bird status and deadline, so you can buy the same day.
Live URL: https://live-show-radar-sigma.vercel.app · Repo: https://github.com/pratikshak-maker/Live-show-radar
Screenshots: placeholder — Radar (dark/light), show drawer, Activity live log, map view.
No signup, no login wall, no onboarding. Every integration is an optional upgrade.
Full diagrams and the component table are in docs/COMPONENTS_MAP.md.
flowchart LR
Sched[cron-job.org / Vercel Cron] --> Cron["/api/cron/scan"] --> Agent
UI[Next.js UI] --> API[API routes] --> Agent
Agent[Agent: discover → enrich → extract → validate → reconcile → notify]
Agent --> Gemini & TM[Ticketmaster] & SB[ScrapingBee]
Agent --> DB[(Neon Postgres)]
Agent --> Gmail[Gmail API / SMTP]
API --> Cal[Google Calendar]
Next.js 16 (App Router) · React 19 · TypeScript (strict) · Tailwind CSS 4 · Radix UI + lucide-react · Neon Postgres
(@neondatabase/serverless, server-only, parameterised SQL) · @google/genai (Gemini Flash only) · googleapis · nodemailer · zod · date-fns(-tz) ·
cheerio · fastest-levenshtein · Leaflet + OpenStreetMap · Vitest · ESLint + Prettier · Vercel.
| API | What it does here |
|---|---|
| Gemini (Google Search grounding + JSON mode) | Finds announcements, extracts structured shows, writes the "Should I go?" brief, answers questions |
| ScrapingBee (HTML + Google Search) | Reads live ticketing pages for tiers/deadlines; fallback search |
| Gmail API | Sends alert emails as you (SMTP app-password fallback) |
| Google Calendar API | Creates/deletes concert, early-bird and reminder events |
| Ticketmaster Discovery | Official listings as a second source |
| Spotify Web API | Imports followed artists (allow-listed accounts only) |
| Last.fm | Imports top artists from a username |
| MusicBrainz | Artist autocomplete + disambiguation |
| Deezer | Artist photos (≥0.85 name match) |
| OpenStreetMap (Nominatim + tiles) | Venue geocoding and the map |
Per artist: A discover (Gemini grounded search, Ticketmaster, ScrapingBee Google fallback) → B enrich (scrape allow-listed ticketing pages under a daily credit budget; JSON-LD parsed) → C extract (Gemini JSON mode, zod-validated, one repair retry) → D validate (deterministic: right artist, in India, sane date, every cited URL must be one the model was given) with a 0–1 confidence score → E reconcile (dedupe incl. ±1 day, merge tiers/sources, derive early-bird status, detect changes, priority score) → F notify (idempotent in-app + one email per run). Runs are single-flight (Postgres lock), time-budgeted, and every step writes a plain-English line to the live Activity log.
npm install
cp .env.example .env.local # everything is optional
npm run dev # http://localhost:3000
With no keys you'll see the Setup screen; add DATABASE_URL (Neon) first (SETUP.md). Other commands:
npm run lint && npm run typecheck && npm test && npm run build # all pass with NO env vars
npm run check:integrations # ✅/❌ + latency for each configured API
npm run seed # load the starter artists
npm run check:secrets # fails if a secret is exposed via NEXT_PUBLIC_
| Criterion | How it's answered |
|---|---|
| UI/UX quality | "Stage at night" design system, ticket-stub cards with live countdowns, radar sweep, map, skeletons, empty/error states, mobile-first |
| Complexity | 6-stage multi-source agent, grounded search + scraping + structured extraction, deterministic validation, confidence + priority scoring, change detection, idempotent alerts, live log |
| User experience | Value on first screen; one-tap Book / I'm going / Remind me; Undo instead of confirm dialogs |
| External API usage | 10 real integrations, each in lib/integrations/<name>.ts with typed Results |
| Nothing mandatory | No signup/login/onboarding; every integration optional with a graceful "Not connected yet" state |