Changelog

What's new in ViewsBase

New features, improvements and fixes, newest first.

ViewsBase 2.1

v2.1.0 ·

Summary

ViewsBase 2.1 does more of the checking for you.

Added

Scout, your AI assistant

  • Scout is in the sidebar. Press ⌘I (Ctrl+I on Windows) on any page and ask about your campaigns, creators and posts.
  • Scout can make changes for you. Ask it to add a creator, add a post, set a price or pause a creator. Before each change, Scout shows what it will do. You choose Allow once, Allow for this session or Deny. Scout cannot pay creators or change offers.

Post checks

  • Hashtag and @mention rules. In campaign settings, under Post rules, add the hashtags and @mentions every post must have. A post that misses one is flagged for review, with the reason. You can also have these posts rejected automatically.
  • App check. Optionally, ViewsBase checks if a post's cover shows your app, and flags the post if it does not.

Join requirements

  • Tell creators what you need before they join. In Joining settings, add up to 5 requirements, for example "At least 50% U.S. audience". Creators must confirm them before they join or apply.
  • Require every platform. Creators can be asked to join with an account on each platform you accept, for example both TikTok and Instagram.

Payments you can check

  • The math on every post. Each post in a payment summary and in payment history shows how its amount was calculated, for example "48,200 views × $1.50 per 1K = $72.30".
  • Old views warning. If a creator's views were last updated more than 2 days ago, you see a warning before you pay.

Offers in plain words

  • Every offer reads as one sentence, the same for you, your team and the creator: "Creators get $1.50 per 1K views, up to $300.00 per post."
  • No-cap warning. An offer with no cap shows what a 1M-view post would cost, with a one-click Add a cap.

Activity log

  • A clearer activity log. See who did what, when, and on which creator, post or campaign, with a link to it. Filter by date range. Open the activity log

Improved

  • Simpler sign-in. Enter your email and the 6-digit code. ViewsBase takes you to your workspace or your creator account. You do not choose first.
  • Scout is faster and reads the docs. It answers in about half the time. Before it explains how something works, it looks it up in the ViewsBase docs.
  • Easier onboarding for new workspaces.
  • Plan and usage in the sidebar. See your plan, trial days left and posts used this month.
  • Help where you are. Each page has a Docs link, and ⌘K now finds every page of every campaign and searches the docs.
  • Connect your AI agent (Claude, ChatGPT and others) from the sidebar. Set it up

ViewsBase 2.0

v2.0.0 ·

Summary

ViewsBase 2.0 is a full re-imagining of the product. The cyberpunk dashboard is replaced by two purpose-built design languages — Studio for the agency control room and Night Bloom for the creator portal — on top of a new UX architecture: one hero number per screen, one action per row, focused review queues instead of button walls. Around that shell, the release automates the three most repetitive human jobs: sending analytics requests, reading creator demographics from screen recordings, and triaging quality warnings. Every automation is per-campaign opt-in and off by default — campaigns that don't enable it keep the exact pre-2.0 workflow.

Added

Review, in queues

  • Review Queue (pricing) — a full-screen, one-post-at-a-time flow for setting CPM/cap: video on the left, price on the right, Enter approves, arrows skip, Esc closes. Replaces the three overlapping "Review CPM" mechanisms.
  • Quality Queue — every post the bad-post detector flags lands here with the post, a one-sentence warning, and 1–5 AI-generated issue tags ("No CTA", "No logo", …). Skip or Reject (reject prefills the warning as the reason). Keyboard: S/→ skip, R reject.
  • Inline video playback — a play button on posts in the queues and detail panel downloads the video once (on click, never automatically), stores it, and plays it right in the dashboard. No more opening TikTok to watch a post.

The analytics pipeline (per-campaign opt-in, off by default)

  • Automated analytics requests — when a post's counting window ends, the Discord request is sent automatically (hourly), once per post. Manual sending still works everywhere, toggle or not.
  • Creator proof upload page — the request message carries an "Upload your analytics" button opening a no-login, mobile-first page scoped to that one post (thumbnail shown, zero ambiguity). Creators never have to reply correctly in Discord again.
  • AI demographics reading — uploads (screenshots and screen recordings) are read instantly: audience geography extracted, T1 % computed (US/UK tracked separately), the matching CPM tier suggested, and the result posted back into the Discord ticket so tickets stay the audit trail. The Review Queue prefills the matched tier; a human always confirms — the AI never sets a price. A fallback listener also reads screenshots dropped directly in the ticket.
  • Submission period — a per-campaign window (default 7 days) for providing analytics after a request; the upload link and ticket scan both close after it.
  • "View request in Discord" — one-click deep link from a post straight to the request message in the creator's ticket.
  • Fixed-rate awareness — posts on fixed-rate deals (single tier or flat amount) are excluded from all of the above automatically; there is nothing to decide for them.

Navigation & shell

  • Sidebar navigation with campaign sections and org tools, plus breadcrumbs — the nav no longer shape-shifts based on context.
  • ⌘K command palette — jump to any campaign or page, and run frequent actions: Start review queue, Add creator, Add posts, Payments history.
  • Payout pacing hero on the campaign screen: committed / paid / ready to pay with a progress track — "am I on budget?" at a glance.

Creator experience

  • Night Bloom creator portal — opens on the answer: a large animated earnings number with the payout line ("$612.40 lands with Friday's payout"), stat chips, and video cards with earnings pills and cap progress bars.
  • Redesigned login — the creator door (access code) and the team door (email code) each in their own language, with human copy throughout.
  • Redesigned public pages — creator leaderboard, post submission form, and shared campaign reports.

Design system & brand

  • DESIGN.md — the written design system: both themes, tokens, rules, a DO NOT list, and the decision log.
  • Brand asset set — social share card, marketing hero backdrop, and illustrated empty states, generated in the exact brand palettes.
  • Plain-language statuses — Live · Needs price · Awaiting creator · Ready to pay · Paid, each a color and a dot, everywhere.

Removed

  • Discord notifications from the quality detector — findings now live in the dashboard (Quality Queue + in-app notification) instead of scrolling away in a channel.
  • Per-row "···" kebab menus — up to 9 hidden, status-dependent actions per row are gone; every row shows exactly one primary action, and everything else lives in the detail panel.
  • The triple "Review CPM" UI — toolbar button, filter preset, and inline bulk card are all replaced by the single Review Queue.
  • The top navigation bar — replaced by the sidebar + breadcrumbs.
  • The cyberpunk/HUD design system — corner brackets, glow effects, scanline styling, shimmer buttons, uppercase-mono body text, and the cyan accent are fully retired.
  • Jargon status filters — pending_cpm_not_pinged and friends no longer appear anywhere in the UI.
  • Most modal dialogs — details, editing, and summaries moved to context-preserving side panels; modals remain only for destructive confirmations.

Reworked

  • Every surface restyled into the new system: campaign overview, posts, creators, payments, reports, settings, members, org home, account, onboarding, login, marketing site, emails, and error pages.
  • Posts table — fewer, better columns; status dots with plain words; mono numbers; quality flags shown inline; the detail panel absorbs copy/retry/ finalize/pay/reject actions.
  • Payments — a financial-print treatment: serif money heroes, hairline ledger tables, "Ready to pay" leading the page, quiet Pay actions.
  • Creators — one action per row (Pay $X when money is owed, View otherwise); the old eight-button stack folded into the row's expand panel; creator scorecards lead with the money number.
  • Campaign settings — new Analytics Requests card (system toggle + submission period) alongside restyled detector, auto-reject, inactivity, and leaderboard controls.
  • Marketing site — Studio landing with a faithful miniature of the real product (pacing bar, one-action rows, live dot) and a Night Bloom earnings card telling the two-audience story.

Compatibility

  • No breaking changes for campaigns that leave the analytics toggle off: no buttons on Discord messages, no upload pages, no scanning — the pre-2.0 manual flow, unchanged.
  • All statuses, APIs, and data models are unchanged at the database level; plain-language statuses are display-only.
  • Deployment notes: Trigger.dev deploy (with DISCORD_TOKEN in its env), Discord Message Content intent enabled, bot redeploy.

Creator Dashboard Simplification

v0.2.0 ·

Summary

This update simplifies the creator campaign dashboard around clearer internal creator workflows, competitor intelligence, watched account tracking, payment accuracy, and report sharing. Competitor content is separated from internal creator posts so campaign payments and analytics stay scoped to hired creators.

Added

  • Analytics overview with campaign KPI cards, date filters, creator/video leaderboards, top video drilldowns, and clearer above-the-fold prioritization.
  • Internal posts workflow with filters, lifecycle actions, manual tracking, bulk selection, finalize-early support, and row-level tracking outcomes.
  • Manual tracking for TikTok and Instagram URLs with internal and competitor modes, duplicate detection, retry handling, immediate UI updates, and fetched post metadata when available.
  • Competitor Intelligence area for external competitor posts, including source account metadata, thumbnails, sorting, metrics, and tracking status.
  • Watched accounts for internal creators and competitors, with active/paused states, sync status, initial import choices, and manual sync actions.
  • Creator management improvements for adding, editing, pausing, and resuming campaign creators, including campaign-specific offer terms.
  • Reports workflow for internal creator campaign reporting, including markdown export, download, shareable snapshot links, public report pages, payout visibility controls, and revocation.
  • Settings controls for auto-reject defaults, leaderboard visibility, leaderboard sharing, and Discord server allowlisting.
  • Updated public landing and documentation to reflect the new dashboard structure, tracking modes, competitor intelligence, watched accounts, payments, and reports.

Changed

  • Individual video tracking remains the default workflow; watched accounts are optional and disabled by default.
  • Internal creators and owned accounts are treated the same: each creator maps to one platform handle and can have CPM, fixed-rate, or zero-rate terms.
  • Competitor tracking no longer requires creating a creator record and is excluded from creator payments.
  • Instagram watched accounts track Reels only so slideshow posts are not watched when view counts are unavailable.
  • Payment aggregates now count finalized unpaid internal posts only, keeping pending and competitor posts out of payable totals.
  • Pausing a creator also pauses that creator's watched account tracking.
  • Reports are internal-creator only and exclude competitor-tracked content.

Fixed And Hardened

  • Fixed campaign report link failures caused by missing Supabase columns.
  • Fixed pending payment calculations so they do not include non-finalized posts.
  • Added row-level success and failure handling for bulk manual tracking instead of failing the whole request.
  • Added clearer tracking success, duplicate, fetch failure, and retry states in the UI.
  • Cached fetched thumbnails and source metadata in tracked post records so cards are not stuck on bare post IDs after refresh.
  • Removed migration compatibility fallbacks from hot API paths and consolidated manual tracking behavior into shared server logic.
  • Replaced broad browser event refreshes with explicit dashboard state updates after tracking changes.

Scheduled Syncs

  • Watched accounts sync on the existing six-hour schedule.
  • Active TikTok and Instagram watched accounts are discovered during scheduled syncs.
  • Competitor watched accounts refresh tracked posts but do not enter payment or creator lifecycle workflows.
  • Recently finalized and paid posts continue refreshing for analytics/reporting while finalized payable view counts remain frozen.

Hidden Or Backlogged

  • Exceptions Center remains hidden until the product behavior is specified.
  • Payment request backend pieces exist, but the main payment request UI is not surfaced until the internal approval workflow is finalized.
  • Fixed-term creator deals are backlogged as a separate feature instead of being represented as pacing tables.
  • Saved ideas and schedule tabs were removed from the dashboard surface.
  • Watched accounts support active and paused states only; delete behavior is intentionally not exposed.

Known Follow-Ups

  • Split the largest dashboard components into smaller route-level and tab-level modules before adding more surface area.
  • Finish the Exceptions Center product spec before exposing notification or remediation workflows.
  • Decide whether payment request approval should live inside Payments, Exceptions, or a separate internal admin queue.