Adholics.

Changelog

Built in the open.

The most recent shipped work. Subscribe via the RSS feed coming soon, or follow us on X.

  1. OAuth + 2FA + calculated metrics

    • Two-factor auth (TOTP) with recovery codes — opt-in per user from /account.
    • Calculated-metric widgets in the dashboard builder — formula syntax with safe arithmetic evaluator.
    • OAuth connect buttons for Meta Ads, Google Ads, Microsoft Ads (Microsoft pending Azure tenant).
    • Refresh-token race grace period: multi-tab logins no longer bounce to /login.
    • Sync snapshot size guard: large perf sheets no longer hit D1's 1 MiB row limit.
  2. Command palette + per-tenant feature flags

    • ⌘K command palette: jump to any workspace, dashboard, or admin action.
    • Per-tenant feature overrides: support can unlock Pro features for a Starter customer without changing their plan.
    • Platform usage metrics page in admin — total users, WAU, sync health, embed views at a glance.
  3. Embed iframe + per-widget AI insights

    • Public embed iframe for single charts — drop one widget into a client's Notion or website.
    • Per-widget "Explain this" AI insights with lazy-loaded popover.
    • Slack notifications for pacing alerts.
  4. Agency overview + data-aware chatbot

    • Agency overview dashboard: cross-client KPI rollup with drill-down.
    • Chatbot now answers data questions about whichever workspace you're in.
    • Embed token storage with view counts.
  5. Reports UI + AI narrative + system health

    • Scheduled reports backed by a 15-minute cron — branded PDF rendered server-side.
    • AI-generated narrative section in every report.
    • System self-test endpoint covers DB, KV, R2, JWT, secrets.