Setting up Firestore

Creating collections and seeding demo data. This runs once.

Starting...

Overview

Overview
📊 Key metrics
✅ My tasks
📣 Announcements
Recent activity
Tickets / 14 days
Top requesters (30d)

Tickets 0 open

Single ticket
Bulk create from CSV
Loading from Firestore...

Assets

Device / SerialTypeAssigned toStatusTickets
Loading...

Alerts

Loading…

Feedback & ideas

Loading…

Widget Builder

Create a Custom Widget

Knowledge Base

Software list

This list powers the software field on tickets. Add any app, tool, or service your team uses.
Loading...

Templates

Ticket templates
Email reply templates
Variables: {{name}} {{serial}} {{email}} {{department}} {{date}}
Loading...

Bulk Create

From CSV
Manual list
Click to upload CSV, or paste below

Maintenance

Fill in missing department information on existing tickets by looking up each requester's department.

Users

Name / EmailDepartmentJob titleStatusTicketsAssets
Loading users...

Projects

Loading projects...

Status page — public, no login required

This page is publicly viewable at — no login needed. Share with your team so they can check for known issues before submitting a ticket.
📣 Portal announcements — shown to employees on the help portal home
Active incidents
Services
Incident history

Recurring tickets

Recurring tickets are checked when you open the app. If one is due, you'll see a prompt to create it with one click.
Loading...

Reports

Saved reports
Configure filters above and click ▶ Run to generate a report
Back Settings
Appearance
🎨 Theme
⚙ Layout
Tickets
🎫 Ticket defaults
🎯 Statuses
⚡ Custom fields
🔖 Ticket ID
⏱ SLA targets
🔒 Auto-close
Email & notifications
🔔 Notifications
✉️ Email templates
Organization
🏢 Departments
💻 Asset types
💾 Software
🛠 Agents
📋 Queues
🔀 Routing rules
📑 View tabs
🕐 Business hours
Knowledge base
📚 KB categories
📖 KB review cycle
Integrations
🚨 Alerts
💬 Slack feed
🔗 Webhook
✨ AI settings
Dashboard
Data
📤 Export data
No settings match.

Theme

Accent color
The highlight color used for active states, badges, and buttons.
hex
Font
The typeface used throughout the app.
Interstate
Default
IBM Plex Sans
Classic
Inter
Modern
DM Sans
Friendly
Geist
Clean
JetBrains Mono
Developer
Sora
Rounded
Background
How dark the background is.
Brunt Black (default)
Void
Midnight
Zinc
GitHub Dark
Navy
Warm dark
White (light)
Border radius
How rounded corners are across the UI.
Sharp
Default
Rounded
Pill

Notifications

Bell notifications
Which events show up in your notification bell.
Email notifications
Which events also send you (staff) an email. For the emails sent to requesters, see the Email templates tab.
Queue notifications
Get alerted (bell + Slack + email) when a ticket lands in these queues — even if it's not assigned to you. Saves instantly.

Email templates

Customize the emails sent to requesters from tickets@bruntworkwear.com. Placeholders you can use: {{ticketNumber}} {{title}} {{requesterName}} {{status}} {{assigneeName}} {{priority}} {{department}}

Alerts

Emails from monitoring tools (Meraki, BitDefender, JumpCloud…) are routed to the Alerts dashboard instead of the helpdesk, and only become tickets when they match a keyword below.
Dashboard tabs
Each line is a tab on the Alerts dashboard. Format: key | Label (the key is what senders point to as their category).
Alert senders
One per line: match | Label | network (or security). "match" is any part of the sender address — usually a domain.
Auto-create a ticket when the alert contains…
One keyword or phrase per line (matched against subject + body). Everything else stays on the dashboard only.

Slack team feed

Post new tickets and requester replies to a shared Slack channel your techs watch. A tech can reply in a ticket's thread to respond on the ticket (it emails the requester from them).
Feed channel
Channel ID (e.g. C0123ABCD) or #it-helpdesk. You must invite the bot to this channel, and enable the message.channels event + channels:history scope in the Slack app.

Ticket defaults

These values pre-fill on every new ticket so you don't have to pick them each time.

Custom ticket fields

Add extra fields to the ticket form. They appear below the standard fields and are saved with every ticket.

SLA targets

Maximum time to resolve a ticket before SLA is considered breached. Timers count from ticket creation.
Business hours only
When enabled, SLA timers only count during your configured business hours.
Use business hours for SLA calculation

Departments

These appear in ticket, user, and project dropdowns throughout the app.

Asset types

Types that appear when adding or filtering assets.

KB categories

Categories that appear in the KB article editor and group articles on the KB list page. Removing a category here won't delete articles that already use it — they'll keep their existing label.

Agents

Add the technicians who use the helpdesk and set what each one can do across the whole site (their role + which sections they can see). Once someone is an agent, add them to queues over in Queues by picking them from a dropdown. bfriedman@bruntworkwear.com is always IT Admin.

Queues

Each queue is a bucket tickets get routed to — only the agents on a queue (plus IT Admins) can see its tickets. Add people to a queue by picking them from your agents list; add the same person to several queues to give them multi-queue access. A person's site permissions (role + sections) live on their agent record, not here.
Pending shared templates
Templates submitted by team members waiting for your approval.
No pending templates

Routing rules

Auto-route tickets to queues based on flexible conditions. Each rule can match on keywords (title, description, software, tags), specific software names, requester email, or tags. Rules run top-to-bottom — the first matching rule wins. Use priority rules to override all others. Applies to tickets from every source (web form, Slack, email, alerts, onboarding).
Override a manually-set queue
Off: rules only fill an empty queue (a queue someone set by hand always wins). On: matching rules re-route even over a manual queue.
Rules
Add conditions to match tickets. Any (OR) = match if any condition is true; All (AND) = require every condition. Priority rules stop processing once matched.

Software

Manage software categories and per-app settings (category, default routing queue, owner, status, notes). Deprecated software is hidden from the ticket form but kept on existing tickets.
Categories
Group software and populate the software category dropdown. Saved with Settings.
Software
Click Edit to set category, default queue, owner, status and notes.

Ticket ID format

Customize how ticket IDs display throughout the app.
T-001

Business hours

Used for SLA calculations when "business hours only" is enabled.
Mon
Tue
Wed
Thu
Fri
Sat
Sun

KB review cycle

Default review interval pre-filled when creating new KB articles.
Show review due banner on overdue articles

View tabs

These are the preset tabs above the ticket list. Edit a tab's name, filters, and sort below. Tip: tick "Assigned to me" to make a tab personal — it resolves to whoever is logged in.

Statuses

Rename how each status appears throughout the app. The underlying value stays the same, so existing tickets and filters keep working — only the label changes. (Adding or removing statuses needs a code change; ask Claude.)
Resolved auto-close window
After a ticket is marked Resolved, it stays open this many days before auto-closing. The countdown banner on the ticket also uses this value.

Auto-close rules

Automatically close tickets that have been inactive for a set number of days. Only applies to tickets in "In Progress" status.
Enable auto-close

Layout

Navigation tabs
Drag to reorder. Toggle to show/hide. Changes apply immediately on save.
Ticket sidebar sections
Drag to reorder the sections on the ticket detail page.
Ticket page columns
The ticket detail page has three columns. Open any ticket, click ⠿ Layout in the top bar, then drag panels between the left and right columns. Your arrangement is saved on this device.

Export data

Download your data as CSV. Useful for reporting, backups, or importing elsewhere.
All tickets
Assets
Users
KB articles

AI settings

Google Gemini API key powers ✨ AI Suggest Answer and ✨ Ticket Summary. Get yours free at aistudio.google.com → Get API key. Stored in your browser only.

Webhook

Send a POST request to a URL whenever a ticket is created or updated. Useful for Slack channel alerts or external integrations.
{"event":"ticket.created","ticket_id":"T-001","title":"...","requester":"...","priority":"...","status":"...","timestamp":"..."}
Users ·
Profile
Activity
Assigned assets
Ticket history
Back
Stats
Assigned tickets
Recent activity
All tickets ·
✎ Customize mode — drag ⠿ to move a module, ✕ to hide it, or drag the bottom edge of a feed/log to resize it.
Description
📝 Notes & updates
Visible to requester
Staff notes
✉️ Conversation
✅ Tasks
💻 Linked assets
📋 Activity log — every action on this ticket
Related & info
✨ Agent assist
Tags
Time logged
0h 0m
Requester history
Queue & assignment

Was this helpful?
Comments
Tickets resolved with this article

None yet

On this page
New KB article
Controls who can see this article on the public KB.
Article auto-archives on this date.
of
Attachments
Projects ·
Progress
0%
People involved
Linked tickets
Activity