Support Messages
Overview
Two channels feed into a single support message inbox:
- In-app feedback — authenticated users can submit bug reports, feature requests, or general feedback from the Send Feedback button at the bottom of the sidebar. Visible to all roles.
- Marketing site contact form — prospects or visitors can reach out through the public
/contactpage. These submissions are not linked to an account.
All submissions are reviewed in the superuser admin area under Support Messages.
Permissions
| Action | All members | Superuser |
|---|---|---|
| Submit in-app feedback | ✓ | ✓ |
| View submissions in admin | ✗ | ✓ |
| Update submission status | ✗ | ✓ |
The marketing site contact form requires no login.
Message types
| Type | Source | Description |
|---|---|---|
| Contact | Marketing site /contact page | General inquiry from a prospect or visitor |
| Bug | In-app feedback modal | A reported bug or broken behavior |
| Feature Request | In-app feedback modal | A request for new functionality |
| General | In-app feedback modal | Anything else |
Statuses
| Status | Meaning |
|---|---|
| Open | New, unreviewed submission |
| In Progress | Someone is actively looking into it |
| Closed | Resolved or no further action needed |
Clicking the status chip on any submission cycles it forward: Open → In Progress → Closed → Open.
How it works
In-app feedback
- Click Send Feedback at the bottom of the left sidebar (any page).
- Choose a type (Bug, Feature Request, or General).
- Optionally add a subject and fill in the message.
- Submit. The submission is linked to the user’s account and membership.
Marketing site contact form
The /contact page on the marketing site is publicly accessible. Fields: Name, Email, Subject (optional), Message. Rate-limited to 5 submissions per IP per 15 minutes to prevent spam. A honeypot field silently discards automated form fills without showing an error.
Admin area (superuser only)
The Support Messages page in the superuser admin area lists all submissions newest-first. Filters let you narrow by type and status.
Each row shows:
- Type icon — color-coded by type (red = bug, amber = feature request, blue = contact, green = general)
- Sender — name (if provided) or email, plus account name for in-app submissions
- Preview — subject line if present, otherwise the first ~80 characters of the message
- Date — submission date
- Status chip — click to cycle status
Click a row to expand and read the full message, plus sender email, type, account, and timestamp.
Support notes
- Spam submissions: The contact form has two anti-spam layers — rate limiting (5 per 15 min per IP) and a honeypot field. If spam volume becomes a concern, the
ttlandlimitvalues can be adjusted in the server throttle config. - Account info on submissions: In-app submissions show the account name. Marketing site submissions have no linked account and show a dash in the account column.
- Contact form acknowledgement: When a visitor submits the marketing site contact form, they automatically receive a confirmation email echoing their message back to them. Superusers continue to receive the internal support notification as usual. In-app feedback submissions (bug, feature, general) do not send an acknowledgement — only the internal notification goes out.