Dashboard Guide

Welcome to the ReleaseRay dashboard! This guide walks you through every feature, screen, and workflow. Follow along to master ReleaseRay in 10 minutes.


Overview

The ReleaseRay dashboard is organized into six main sections:

  1. 📊 Dashboard - Overview and quick actions
  2. 📦 Releases - Create and manage release notes
  3. 🔧 Repositories - Manage connected repos
  4. ⚙️ Settings - Configure integrations and preferences
  5. 📈 Analytics - Track usage and ROI
  6. 👤 Account - Manage profile and billing

Let's explore each section.


1. Dashboard (Home)

URL: /dashboard

The dashboard is your command center. Here's what you'll see:

[SCREENSHOT NEEDED: Dashboard overview showing all key sections]

How to capture:

  1. Log in to ReleaseRay
  2. Navigate to /dashboard
  3. Take full-page screenshot
  4. Annotate: (A) Quick stats, (B) Recent activity, (C) Quick actions

Quick Stats (Top Row)

Active Repositories: Number of repos currently syncing PRs

Drafts This Month: Total drafts generated this billing cycle

Published Releases: Releases published across all channels

Active Repo Progress: Visual indicator of how many active repos you're using vs. your plan limit

[SCREENSHOT NEEDED: Quick stats cards]

Recent Activity

Shows the 10 most recent events:

  • ✅ Draft generated
  • 📝 Draft edited
  • 🚀 Release published
  • 🔗 Repo connected

Each item shows:

  • Event type icon
  • Repository name
  • Action description
  • Timestamp (e.g., "2 hours ago")

[SCREENSHOT NEEDED: Recent activity feed]

Quick Actions

Prominent action buttons:

"Generate Draft" → Quick draft generation modal

"New Release Range" → Create a release range

"View All Releases" → Navigate to releases page

[SCREENSHOT NEEDED: Quick action buttons]


2. Releases Page

URL: /releases

This is where you create, review, and publish release notes.

[SCREENSHOT NEEDED: Releases page with list of ranges]

Release Ranges List

What you see:

  • Release range cards (e.g., "v1.0.0 → v1.1.0")
  • Repository name
  • Date created
  • Number of PRs and issues included
  • Draft status for each persona

Actions per range:

  • "View Drafts" - See generated notes
  • "Edit Range" - Modify range details
  • "Delete" - Remove range (with confirmation)

[SCREENSHOT NEEDED: Single release range card with all info]

Creating a Release Range

Click "New Release Range" to open the modal:

[SCREENSHOT NEEDED: New Release Range modal]

Steps:

  1. Select repository (dropdown)
  2. Choose "From Tag" (e.g., v1.0.0)
  3. Choose "To Tag" (e.g., v1.1.0) or "HEAD" for unreleased
  4. Click "Create Range"

What happens next:

  • Range is created
  • PRs and issues are collected
  • You're redirected to the draft generation page

3. Draft Generation

URL: /releases/[id]

After creating a range, you generate drafts for each persona.

[SCREENSHOT NEEDED: Draft generation page showing 3 persona cards]

Persona Cards

You'll see three cards:

1. Engineer Persona

  • Icon: 🛠️
  • Description: "Technical details, upgrade instructions, PR references"
  • Status: "Not generated" or "Generated" with timestamp
  • Button: "Generate Draft"

2. Internal/CSM Persona

  • Icon: 👔
  • Description: "Customer impact, talking points for sales/support"
  • Status: "Not generated" or "Generated" with timestamp
  • Button: "Generate Draft"

3. Customer Persona

  • Icon: 🎯
  • Description: "Benefit-driven, jargon-free, user-friendly"
  • Status: "Not generated" or "Generated" with timestamp
  • Button: "Generate Draft"

[SCREENSHOT NEEDED: Three persona cards side by side]

Generating a Draft

Click "Generate Draft" on any persona:

  1. Progress indicator appears: "Generating draft..."
  2. Estimated time shown: "~30 seconds"
  3. Status updates: "Classifying PRs..." → "Writing draft..." → "Complete!"
  4. Card updates: Shows "Generated 2 minutes ago"
  5. New button appears: "View & Edit"

[SCREENSHOT NEEDED: Draft generation in progress]

Bulk Generation

Click "Generate All Personas" to create all three drafts simultaneously:

[SCREENSHOT NEEDED: All three drafts generating in parallel]

This generates all three drafts in parallel (~45 seconds total).


4. Draft Editor

URL: /releases/[id]/edit?persona=engineer

Review and edit your generated drafts.

[SCREENSHOT NEEDED: Full draft editor interface]

Key areas to show:

  • (A) Persona switcher tabs
  • (B) Markdown editor
  • (C) Preview pane
  • (D) Action buttons (Save, Publish)

Persona Switcher

Tabs at the top let you switch between personas:

  • Engineer | Internal | Customer

Active tab is highlighted. Click to switch instantly (auto-saves).

[SCREENSHOT NEEDED: Persona switcher tabs]

Markdown Editor (Left Pane)

Features:

  • Syntax highlighting
  • Line numbers
  • Auto-save (every 3 seconds)
  • Undo/redo
  • Full screen mode (button in top right)

Toolbar:

  • Bold (⌘B)
  • Italic (⌘I)
  • Heading (⌘H)
  • List
  • Link (⌘K)
  • Code block

[SCREENSHOT NEEDED: Markdown editor with toolbar]

Preview Pane (Right Pane)

Live preview of your markdown:

  • Updates as you type (300ms debounce)
  • Shows exactly how it will look when published
  • Syntax-highlighted code blocks
  • Rendered links and images

[SCREENSHOT NEEDED: Preview pane showing rendered markdown]

Action Buttons (Bottom)

Save Draft - Manually save (auto-save already works)

Publish - Opens publish modal (see next section)

Export - Download as .md file

Discard Changes - Revert to last saved version

[SCREENSHOT NEEDED: Action button bar]


5. Publishing Modal

Trigger: Click "Publish" from the draft editor

[SCREENSHOT NEEDED: Publish modal with all channels]

Channel Selection

Check the channels where you want to publish:

✅ GitHub Releases

  • Creates or updates a GitHub Release
  • Checkbox: "Publish as draft" (for review before making public)

✅ Hosted Changelog

  • Publishes to your public changelog page
  • URL preview: releaseray.com/changelog/your-org

⬜ Slack (if configured)

  • Sends to your configured Slack channel
  • Shows: "#releases" or "Not configured" link

⬜ Microsoft Teams (if configured)

  • Sends to your configured Teams channel
  • Shows: "Releases" or "Not configured" link

⬜ Intercom Help Center (if configured)

  • Creates article in Intercom
  • Shows: "What's New" or "Not configured" link

[SCREENSHOT NEEDED: Channel checkboxes with some checked, some unconfigured]

Publishing

Click "Publish to Selected Channels":

  1. Progress shown: "Publishing to GitHub..." ✅
  2. Progress shown: "Publishing to Slack..." ✅
  3. Success message: "Published successfully to 2 channels"
  4. Links provided: "View on GitHub" | "View on Slack"

[SCREENSHOT NEEDED: Publishing progress with success indicators]


6. Repositories Page

URL: /dashboardRepositories tab

Manage your connected GitHub repositories.

[SCREENSHOT NEEDED: Repositories page with list of connected repos]

Repository List

Each repository card shows:

  • Repository name (e.g., "acme/myapp")
  • Last sync time (e.g., "Synced 5 minutes ago")
  • Total PRs ingested (e.g., "145 PRs")
  • Status indicator (🟢 Active | 🔴 Sync failed)

Actions:

  • "Sync Now" - Manually trigger sync
  • "View PRs" - See all ingested PRs
  • "Settings" - Configure repo-specific settings
  • "Disconnect" - Remove from ReleaseRay

[SCREENSHOT NEEDED: Single repository card with all details]

Adding a Repository

Click "Add Repository":

[SCREENSHOT NEEDED: Add repository flow]

Steps:

  1. Modal opens showing repos from your GitHub App installation
  2. Select one or more repositories
  3. Click "Connect"
  4. Sync begins automatically

If repository isn't listed:

  • Link to GitHub App settings: "Configure GitHub App to grant access"

7. Settings Page

URL: /settings

Configure ReleaseRay to your needs.

[SCREENSHOT NEEDED: Settings page with navigation sidebar]

Settings Navigation (Left Sidebar)

  • ⚙️ General - Organization name, preferences
  • 🔗 Integrations - Slack, Teams, Intercom
  • 🔑 API Keys - Generate API keys
  • 👥 Team - Invite team members
  • 💳 Billing - Manage subscription
  • 📊 Usage - View usage statistics

Integrations Tab

URL: /settings/integrations

[SCREENSHOT NEEDED: Integrations settings page]

Slack Integration

Not configured state:

  • Gray card with Slack logo
  • Description: "Send release notes to Slack channels"
  • Button: "Configure Slack"

Configured state:

  • Green checkmark ✅
  • Shows: "Connected to #releases"
  • Buttons: "Test Connection" | "Edit" | "Delete"

[SCREENSHOT NEEDED: Slack integration card - configured]

Microsoft Teams Integration

Same layout as Slack, but for Teams:

  • Shows configured channel name
  • Test, Edit, Delete buttons

[SCREENSHOT NEEDED: Teams integration card - configured]

Intercom Integration

Shows:

  • Access token status (masked: abc...xyz)
  • Collection name: "What's New"
  • Last article published: "2 days ago"

[SCREENSHOT NEEDED: Intercom integration card]

API Keys Tab

URL: /settings/api-keys

[SCREENSHOT NEEDED: API Keys page]

List of your API keys:

  • Key name (e.g., "CI/CD Pipeline")
  • Prefix (e.g., rray_abc...)
  • Created date
  • Last used (e.g., "Used 2 hours ago")
  • Actions: "Revoke"

"Generate New Key" button → Opens modal:

  1. Enter key name
  2. Click "Generate"
  3. Key is shown ONCE (copy it!)
  4. Modal shows: "Save this key now. You won't see it again."

[SCREENSHOT NEEDED: Generate API key modal showing new key]


8. Analytics Page

URL: /analytics

Track your usage and ROI.

[SCREENSHOT NEEDED: Analytics dashboard]

Time Saved

Big metric at top:

⏱️ Time Saved This Month
8.5 hours

Compared to manual release notes (avg 30 min per release)

Graph showing time saved over past 6 months.

[SCREENSHOT NEEDED: Time saved metric and graph]

Usage Statistics

Cards:

  • Drafts Generated: 42 this month
  • Releases Published: 38 this month
  • API Calls: 1,234 this month
  • Most Active Repo: acme/myapp (15 releases)

[SCREENSHOT NEEDED: Usage stats cards]

Engagement Metrics

Coming soon: Track how many people view your release notes:

  • Changelog page views
  • GitHub release views
  • Email open rates

9. Account & Billing

URL: /settings/billing

Manage your subscription and billing.

[SCREENSHOT NEEDED: Billing page]

Current Plan

Card showing:

  • Plan name: "Growth"
  • Price: "$49/month"
  • Included repos: 10
  • Current usage: 7/10 repos (70%)
  • Progress bar showing usage

Buttons:

  • "Upgrade Plan"
  • "Manage Payment Method"
  • "View Invoices"

[SCREENSHOT NEEDED: Current plan card]

Usage This Month

Active Repos: 7 out of 10 included

  • List of active repos
  • Days each was active

Overage: None (or "$12 for 2 additional repos")

[SCREENSHOT NEEDED: Usage breakdown]

Billing History

Table of past invoices:

  • Date (e.g., "Nov 1, 2025")
  • Amount ($49.00)
  • Status (Paid ✅)
  • Download PDF link

[SCREENSHOT NEEDED: Billing history table]


10. Team Management

URL: /settings/team

Invite team members to collaborate.

[SCREENSHOT NEEDED: Team management page]

Current Team Members

List showing:

  • Avatar or initials
  • Name (e.g., "John Doe")
  • Email (john@acme.com)
  • Role (Owner, Admin, Member)
  • Joined date
  • Actions: "Remove" (for non-owners)

[SCREENSHOT NEEDED: Team members list]

Invite Team Member

"Invite Member" button → Modal:

  1. Enter email address
  2. Select role (Admin or Member)
  3. Click "Send Invite"
  4. They receive email with invitation link

[SCREENSHOT NEEDED: Invite member modal]

Role permissions:

  • Owner: Full access, billing, team management
  • Admin: Full access except billing
  • Member: Can view and generate drafts, cannot change settings

11. Mobile Experience

The ReleaseRay dashboard is fully responsive.

[SCREENSHOT NEEDED: Mobile view of dashboard]

Mobile features:

  • Collapsible sidebar (hamburger menu)
  • Touch-optimized buttons
  • Swipe between personas in editor
  • Full editor functionality maintained

[SCREENSHOT NEEDED: Mobile draft editor]


Common Workflows

Workflow 1: Weekly Release

Goal: Publish release notes every Friday

  1. Thursday: Create release range (last Friday's tag → HEAD)
  2. Generate drafts for all 3 personas (~1 minute)
  3. Review engineer draft - ensure breaking changes are clear
  4. Review customer draft - make sure benefits are highlighted
  5. Friday morning: Edit any final tweaks
  6. Publish to GitHub, Slack, and hosted changelog
  7. Done! (~10 minutes total)

Workflow 2: Hotfix Release

Goal: Quick emergency release

  1. Create range (last tag → hotfix tag)
  2. Generate engineer draft only (customers don't need to know internals)
  3. Publish to GitHub immediately
  4. Notify team via Slack
  5. Done! (~3 minutes)

Workflow 3: Major Release Announcement

Goal: Big release with multi-channel distribution

  1. Create range (e.g., v2.0.0 → v3.0.0)
  2. Generate all personas
  3. Carefully review customer draft - this goes public
  4. Edit internal draft - add talking points for CSMs
  5. Publish to all channels:
    • GitHub (public)
    • Intercom (customer-facing)
    • Hosted changelog (public)
    • Slack (internal)
    • Teams (sales team)
  6. Export markdown → send to marketing for blog post
  7. Done! (~30 minutes for thorough review)

Keyboard Shortcuts

Speed up your workflow with keyboard shortcuts:

Global Shortcuts

  • G then D - Go to Dashboard
  • G then R - Go to Releases
  • G then S - Go to Settings
  • / - Focus search
  • ? - Show all shortcuts

Draft Editor

  • ⌘/Ctrl + S - Save draft
  • ⌘/Ctrl + P - Open publish modal
  • ⌘/Ctrl + K - Insert link
  • ⌘/Ctrl + B - Bold text
  • ⌘/Ctrl + I - Italic text
  • ⌘/Ctrl + Z - Undo
  • ⌘/Ctrl + Shift + Z - Redo
  • Esc - Exit full screen

Persona Switching

  • 1 - Switch to Engineer persona
  • 2 - Switch to Internal persona
  • 3 - Switch to Customer persona

[SCREENSHOT NEEDED: Keyboard shortcuts reference card]


Tips & Tricks

1. Use Browser Bookmarks

Bookmark commonly-used pages:

  • /releases - Quick access to release list
  • /settings/integrations - Manage integrations
  • /analytics - Check your time savings

2. Set Up Browser Notifications

Enable browser notifications to get alerted when:

  • Draft generation completes
  • Publishing succeeds
  • Team member invites you

3. Use API for Automation

Generate release notes automatically on git tag push:

# In your CI/CD pipeline
curl -X POST https://app.releaseray.com/api/drafts/${RANGE_ID}/generate \
  -H "Authorization: Bearer $RELEASERAY_API_KEY" \
  -d '{"persona": "engineer"}'

4. Persona Templates

Save time by creating templates:

  • Add consistent sections (e.g., "Upgrade Instructions" in engineer draft)
  • Use snippets for common patterns
  • Keep a style guide for your team

Troubleshooting

"No PRs showing up in my range"

Check:

  1. PRs were merged AFTER you installed the GitHub App
  2. Webhook deliveries are succeeding (check GitHub App settings)
  3. Date range includes the merge dates
  4. Repository is connected in ReleaseRay

"Draft generation is taking too long"

Normal times:

  • Small releases (<10 PRs): ~30 seconds
  • Medium releases (10-30 PRs): ~45 seconds
  • Large releases (30+ PRs): ~60 seconds

If it's taking longer:

  • Check our status page: status.releaseray.com
  • Refresh the page (status might be cached)
  • Contact support if >5 minutes

"Can't publish to Slack"

Check:

  1. Slack integration is configured (Settings → Integrations)
  2. Webhook URL is correct
  3. "Test Connection" succeeds
  4. Channel still exists in Slack

"Team member can't access releases"

Check:

  1. They've accepted the invitation email
  2. They're logged in to the correct organization
  3. Their role has sufficient permissions
  4. They've been added to the repository in GitHub (if private repo)

Need Help?

Questions about the dashboard? We're here to help!

Tip: Click the ? icon in the bottom-right corner of the dashboard for in-app support, search documentation, or chat with our team during business hours.


What's Next?

Now that you know the dashboard, try these:

  1. ✅ Create your first release range
  2. ✅ Generate drafts for all 3 personas
  3. ✅ Publish to your first channel
  4. ✅ Set up Slack or Teams integration
  5. ✅ Invite a team member
  6. ✅ Check your time savings in Analytics

Happy releasing! 🚀


Note to documentation team:

This guide has 19 screenshot placeholders marked with > **[SCREENSHOT NEEDED: ...]**.

To complete this documentation:

  1. Log in to ReleaseRay (staging or production)
  2. Navigate to each screen mentioned
  3. Take high-quality screenshots (1920x1080 or higher)
  4. Annotate screenshots with arrows/labels where specified
  5. Save as: dashboard-{section-name}.png
  6. Place in: apps/site/public/docs/dashboard/
  7. Replace placeholders with image markdown:
![Description](../../public/docs/dashboard/screenshot-name.png)

Screenshot dimensions:

  • Full page: 1920x1080
  • Card/component: 800x600
  • Modal: 600x400
  • Mobile: 375x667

Tools recommended:

We value your privacy

We use cookies to enhance your experience. Essential cookies are required for the site to function. You can choose to accept all cookies or manage your preferences.