Skip to content

Add Issue Reporter widget for Monitor integration #211

@claytoncollie

Description

@claytoncollie

Summary

Add a client-side "Report Issue" widget to 10up Experience that allows users on client sites to submit issues directly to Monitor. This replaces MarkerIO as Fueled's default client-site reporting tool and routes issues through Monitor as middleware to Teamwork, GitHub, GitLab, Jira, etc.

Related

  • Monitor issue: 10up/monitor#23 — Replace MarkerIO with Monitor-owned reporting
  • Monitor PR: 10up/monitor#31 — Issue Reporter collection, API, UI, and integrations

What Monitor provides

Monitor PR #31 adds:

  • POST /api/issues/create endpoint (authenticated via project x-api-key, same key used by SupportMonitor)
  • Issues collection with structured fields: title, description, pageUrl, severity, category, screenshot, browser/device/OS, reporterEmail, externalIds
  • Outbound integrations to Teamwork, GitHub, GitLab, Jira
  • Monitor UI for viewing and managing issues

What 10up Experience needs to add

1. Issue Reporter widget

A MarkerIO-like floating "Report Issue" button that opens a form/modal on client sites.

Minimum fields:

  • Title (text)
  • Description (textarea)
  • Page URL (auto-filled from window.location.href)
  • Severity (select: low / medium / high / critical)
  • Category (select: bug / ux / content / other)
  • Screenshot (optional — file upload or canvas capture)
  • Reporter email (optional)

2. API submission

Submit to Monitor's POST /api/issues/create endpoint using:

  • x-api-key header — the same project API key already configured in SupportMonitor settings
  • source: 'wordpress_experience' — to identify the submission origin

3. Configuration

  • Use the existing SupportMonitor API key (no new credentials needed)
  • Add an admin toggle to enable/disable the widget (default: disabled)
  • The widget should only appear for logged-in users with appropriate roles (configurable)

Implementation notes

  • The widget JS should be lightweight and self-contained
  • It should work alongside the existing SupportMonitor daily report — they share the same API key but hit different endpoints (/api/reports/create vs /api/issues/create)
  • Monitor also plans a non-WordPress JS snippet (@fueled/monitor-reporter) for non-WordPress sites — the widget UX should be consistent across both

Acceptance criteria

  • Floating "Report Issue" button appears on configured sites
  • Form submits to Monitor's /api/issues/create with correct auth
  • Uses existing SupportMonitor API key — no additional configuration needed
  • Admin toggle to enable/disable the widget
  • Role-based visibility (configurable which roles can see the widget)
  • source field set to wordpress_experience so Monitor knows the origin

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions