diff --git a/.github/workflows/screenshots.yml b/.github/workflows/screenshots.yml new file mode 100644 index 0000000000000000000000000000000000000000..825f824a4e737ad8d92f1ab9a842be33fbddbe1c --- /dev/null +++ b/.github/workflows/screenshots.yml @@ -0,0 +1,141 @@ +name: Generate Screenshots + +on: + workflow_dispatch: + release: + types: [published] + +permissions: + contents: write + pull-requests: write + +jobs: + generate-screenshots: + name: Generate Feature Screenshots + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + ref: master + persist-credentials: false + + - name: Set up Go + uses: actions/setup-go@v6 + with: + go-version: "stable" + + - name: Create Dummy Config + run: | + mkdir -p ~/.config/matcha + cat < ~/.config/matcha/config.json + { + "accounts": [ + { + "id": "demo-user", + "name": "Matcha Client", + "email": "matcha@floatpane.com", + "password": "dummy-password", + "service_provider": "custom", + "fetch_email": "matcha@floatpane.com" + } + ] + } + EOF + + - name: Create Dummy Drafts + run: | + cat < ~/.config/matcha/drafts.json + { + "drafts": [ + { + "id": "draft-001", + "to": "team@example.com", + "subject": "Q1 Planning Document", + "body": "# Q1 Planning\n\nHere are the key objectives for Q1...", + "account_id": "demo-user" + }, + { + "id": "draft-002", + "to": "alice@example.com", + "subject": "Re: Design Review Feedback", + "body": "Thanks for the review! I'll address the comments...", + "account_id": "demo-user" + } + ], + "updated_at": "2026-01-15T10:00:00Z" + } + EOF + + - name: Build Matcha + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + LATEST_TAG=$(gh release view --json tagName -q ".tagName" 2>/dev/null || echo "dev") + echo "Using version: $LATEST_TAG" + + git fetch --tags 2>/dev/null || true + + COMMIT=$(git rev-parse --short HEAD) + DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') + go build -ldflags="-s -w -X main.version=$LATEST_TAG -X main.commit=$COMMIT -X main.date=$DATE" -o matcha . + go build -o email_view ./screenshots/cmd/email_view + go build -o inbox_view ./screenshots/cmd/inbox_view + + - name: Prepare Tapes + run: | + for tape in screenshots/*.tape; do + [ "$tape" = "screenshots/common.tape" ] && continue + sed -i 's|go run \./screenshots/cmd/email_view|./email_view|' "$tape" + sed -i 's|go run \./screenshots/cmd/inbox_view|./inbox_view|' "$tape" + sed -i 's|go run \.|./matcha|' "$tape" + done + + - name: Install Dependencies + run: | + sudo apt-get update + sudo apt-get install -y ffmpeg ttyd + mkdir -p ~/.local/share/fonts + wget -q https://github.com/ryanoasis/nerd-fonts/releases/download/v3.1.1/JetBrainsMono.zip + unzip -o JetBrainsMono.zip -d ~/.local/share/fonts + fc-cache -fv + go install github.com/charmbracelet/vhs@latest + + - name: Generate Screenshots + env: + CLICOLOR_FORCE: "1" + run: | + mkdir -p docs/docs/assets/ + for tape in screenshots/*.tape; do + [ "$tape" = "screenshots/common.tape" ] && continue + name=$(basename "$tape" .tape) + echo "==> Generating screenshot: $name" + TERM=xterm-256color vhs "$tape" || echo "Warning: $name failed" + done + # Move generated screenshots to public assets, clean up intermediate gifs + mv screenshots/*.png docs/docs/assets/ 2>/dev/null || true + rm -f screenshots/*.gif 2>/dev/null || true + ls -la public/assets/screenshots/ + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v8 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: "docs: update feature screenshots [skip ci]" + title: "docs: update feature screenshots" + body: | + This PR updates the feature screenshots based on the latest release version. + + Generated automatically by the Generate Screenshots workflow. + + ### Screenshots included: + - `main_menu.png` - Main menu / choice screen + - `compose_email.png` - Email composition with Markdown + - `compose_empty.png` - Clean compose interface + - `email_view.png` - HTML email with inline images and attachments + - `inbox_view.png` - Inbox with emails from various senders and dates + - `settings.png` - Settings / account management + - `drafts.png` - Draft management view + branch: "update-screenshots" + base: "master" + add-paths: public/assets/screenshots/ diff --git a/Makefile b/Makefile index 39addab0e2ac487f862434e6428d2b6c3c5f5b19..ae508cb060ef11d7ff70457f3e0a6b99dcbbde83 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: build test run clean lint fmt vet build-full +.PHONY: build test run clean lint fmt vet build-full generate_screenshots BINARY_NAME=matcha BUILD_DIR=bin @@ -8,6 +8,18 @@ generate_gif: vhs demo.tape mv demo.gif public/assets/demo.gif +generate_screenshots: + @mkdir -p docs/docs/assets/ + @for tape in screenshots/*.tape; do \ + [ "$$(basename $$tape)" = "common.tape" ] && continue; \ + name=$$(basename "$$tape" .tape); \ + echo "==> Generating screenshot: $$name"; \ + vhs "$$tape" || echo "Warning: $$name failed"; \ + done + @mv screenshots/*.png docs/docs/assets/ 2>/dev/null || true + @rm -f screenshots/*.gif 2>/dev/null || true + @echo "Screenshots saved to public/assets/screenshots/" + build: go build -o $(BUILD_DIR)/$(BINARY_NAME) . diff --git a/docs/docs/Features/COMPOSING.md b/docs/docs/Features/COMPOSING.md index 564a6820fa50fb935e16fcfff5e969d366972bc8..d851f44f67a1b840cfb3d592d7a2846b37694ac3 100644 --- a/docs/docs/Features/COMPOSING.md +++ b/docs/docs/Features/COMPOSING.md @@ -1,5 +1,7 @@ # Composing Emails +![composer](../assets/compose_email.png) ![Empty Composer](../assets/compose_empty.png) + Matcha provides a clean, intuitive interface for writing emails. ## Features diff --git a/docs/docs/Features/DRAFTS.md b/docs/docs/Features/DRAFTS.md index 63f4a594416382b5f2f5463ff1470bb68c95031a..4fa71f353fae1fe9e96a830a3bc1b958ea1c42f3 100644 --- a/docs/docs/Features/DRAFTS.md +++ b/docs/docs/Features/DRAFTS.md @@ -1,5 +1,7 @@ # Draft Management +![Drafts](../assets/drafts.png) + Manage your unfinished emails with ease. ## Features diff --git a/docs/docs/Features/EMAIL_MANAGEMENT.md b/docs/docs/Features/EMAIL_MANAGEMENT.md index 4826e1c1fd7c4d28d6c6f6b0bdb87318c24a35cf..1ae99402f3c38121b887dd4833f3192c1111df40 100644 --- a/docs/docs/Features/EMAIL_MANAGEMENT.md +++ b/docs/docs/Features/EMAIL_MANAGEMENT.md @@ -1,5 +1,7 @@ # Email Management +![settings](../assets/settings.png) + Matcha provides comprehensive tools for managing your emails directly from the terminal. ## Key Features diff --git a/docs/docs/assets/compose_email.png b/docs/docs/assets/compose_email.png new file mode 100644 index 0000000000000000000000000000000000000000..ffc3ae947121683d35a559a74e923b71ecec5692 Binary files /dev/null and b/docs/docs/assets/compose_email.png differ diff --git a/docs/docs/assets/compose_empty.png b/docs/docs/assets/compose_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..b697c80577b90f679dff5f3d0ca2426df068fe0f Binary files /dev/null and b/docs/docs/assets/compose_empty.png differ diff --git a/docs/docs/assets/drafts.png b/docs/docs/assets/drafts.png new file mode 100644 index 0000000000000000000000000000000000000000..20729e0bdcfb0bce7828045b29a18fc6a1f6b181 Binary files /dev/null and b/docs/docs/assets/drafts.png differ diff --git a/docs/docs/assets/email_view.png b/docs/docs/assets/email_view.png new file mode 100644 index 0000000000000000000000000000000000000000..4bea29c43cfeca68b6b285ead4ab487fdc67c54f Binary files /dev/null and b/docs/docs/assets/email_view.png differ diff --git a/docs/docs/assets/inbox_view.png b/docs/docs/assets/inbox_view.png new file mode 100644 index 0000000000000000000000000000000000000000..fba25798b5bd33fcfbb73a71557caa1fd39a670d Binary files /dev/null and b/docs/docs/assets/inbox_view.png differ diff --git a/docs/docs/assets/main_menu.png b/docs/docs/assets/main_menu.png new file mode 100644 index 0000000000000000000000000000000000000000..02156755d49763ae99f9a4bc1ddb1e0582148c6a Binary files /dev/null and b/docs/docs/assets/main_menu.png differ diff --git a/docs/docs/assets/settings.png b/docs/docs/assets/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..6308a243309ff34a957790e93e2796891abbd04a Binary files /dev/null and b/docs/docs/assets/settings.png differ diff --git a/docs/docs/index.md b/docs/docs/index.md index f4c5d287654952963b004fac48433ad5ddecec77..77927d2f7bda8b113fc090578171ceef7106e1e8 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -15,7 +15,7 @@ hide_table_of_contents: true Ready to dive in? Here are a few places to start: -- 🚀 [Installation Guide](./Getting Started/installation.md) - Get Matcha running on your machine +- 🚀 [Installation Guide](.//installation.md) - Get Matcha running on your machine - 📖 [Usage & Shortcuts](./usage.md) - Learn how to navigate the interface - ⚙️ [Configuration](./Configuration.md) - Set up your accounts and preferences diff --git a/public/assets/screenshots/.gitkeep b/public/assets/screenshots/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/screenshots/.gitignore b/screenshots/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..1a11fd63024e94aaa3b2870f126d4878be9d81a0 --- /dev/null +++ b/screenshots/.gitignore @@ -0,0 +1,2 @@ +# VHS intermediate output files +*.gif diff --git a/screenshots/cmd/email_view/main.go b/screenshots/cmd/email_view/main.go new file mode 100644 index 0000000000000000000000000000000000000000..b0cc478da8ce13ba8cef933f37941240ce9fcdc9 --- /dev/null +++ b/screenshots/cmd/email_view/main.go @@ -0,0 +1,86 @@ +// email_view is a small helper that renders a mock email with inline images +// for screenshot generation. It creates a bubbletea program displaying a +// realistic HTML email using the real EmailView component. +package main + +import ( + "fmt" + "os" + "time" + + tea "charm.land/bubbletea/v2" + "github.com/floatpane/matcha/fetcher" + "github.com/floatpane/matcha/tui" +) + +func main() { + email := fetcher.Email{ + UID: 1001, + From: "Sarah Chen ", + To: []string{"team@example.com"}, + Subject: "New Dashboard Redesign - Preview & Feedback", + Date: time.Now().Add(-2 * time.Hour), + MessageID: "", + AccountID: "demo-user", + Body: ` + +

Dashboard Redesign Preview

+ +

Hi team,

+ +

I'm excited to share the new dashboard redesign we've been working on! +Here's a quick overview of the changes:

+ +

What's New

+ +
    +
  • Simplified navigation - We reduced sidebar items from 12 to 6
  • +
  • Dark mode support - Full theme switching with system preference detection
  • +
  • Real-time updates - WebSocket integration for live data refresh
  • +
  • Responsive layout - Optimized for mobile, tablet, and desktop
  • +
+ +

Screenshots

+ +

Here's the new main view:

+Dashboard main view + +

And the analytics panel:

+Analytics panel with charts + +

Next Steps

+ +
    +
  1. Review the mockups above
  2. +
  3. Leave comments in the Figma file
  4. +
  5. Join the feedback session on Thursday at 3pm
  6. +
+ +

Looking forward to your thoughts!

+ +

Best,
+Sarah

+ +`, + Attachments: []fetcher.Attachment{ + { + Filename: "dashboard-mockup.png", + MIMEType: "image/png", + Inline: false, + }, + { + Filename: "analytics-export.csv", + MIMEType: "text/csv", + Inline: false, + }, + }, + } + + ev := tui.NewEmailView(email, 0, 140, 45, tui.MailboxInbox, true) + + p := tea.NewProgram(ev) + if _, err := p.Run(); err != nil { + fmt.Fprintf(os.Stderr, "Error: %v\n", err) + os.Exit(1) + } +} diff --git a/screenshots/cmd/inbox_view/main.go b/screenshots/cmd/inbox_view/main.go new file mode 100644 index 0000000000000000000000000000000000000000..f027675501d48182aa6bb798a02c43eff464d809 --- /dev/null +++ b/screenshots/cmd/inbox_view/main.go @@ -0,0 +1,187 @@ +// inbox_view is a small helper that renders a mock inbox with realistic emails +// for screenshot generation. It wraps the real Inbox component in a model +// that forwards window size events properly. +package main + +import ( + "fmt" + "os" + "time" + + tea "charm.land/bubbletea/v2" + "github.com/floatpane/matcha/config" + "github.com/floatpane/matcha/fetcher" + "github.com/floatpane/matcha/tui" +) + +// wrapper forwards all messages to the FolderInbox and ensures it renders correctly. +type wrapper struct { + folderInbox *tui.FolderInbox +} + +func (w wrapper) Init() tea.Cmd { + return w.folderInbox.Init() +} + +func (w wrapper) Update(msg tea.Msg) (tea.Model, tea.Cmd) { + m, cmd := w.folderInbox.Update(msg) + if fi, ok := m.(*tui.FolderInbox); ok { + w.folderInbox = fi + } + return w, cmd +} + +func (w wrapper) View() tea.View { + v := w.folderInbox.View() + v.AltScreen = true + return v +} + +func main() { + now := time.Now() + + accounts := []config.Account{ + { + ID: "demo-user", + Name: "Matcha Client", + Email: "matcha@floatpane.com", + FetchEmail: "matcha@floatpane.com", + }, + } + + emails := []fetcher.Email{ + { + UID: 1012, + From: "Alice Park ", + To: []string{"matcha@floatpane.com"}, + Subject: "Quick sync on the API migration?", + Date: now.Add(-12 * time.Minute), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1011, + From: "GitHub ", + To: []string{"matcha@floatpane.com"}, + Subject: "[floatpane/matcha] Fix: resolve inbox pagination issue (#281)", + Date: now.Add(-47 * time.Minute), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1010, + From: "Sarah Chen ", + To: []string{"team@example.com"}, + Subject: "New Dashboard Redesign - Preview & Feedback", + Date: now.Add(-2 * time.Hour), + MessageID: "", + AccountID: "demo-user", + Attachments: []fetcher.Attachment{ + {Filename: "dashboard-mockup.png", MIMEType: "image/png"}, + }, + }, + { + UID: 1009, + From: "David Kim ", + To: []string{"matcha@floatpane.com"}, + Subject: "Re: Quarterly budget review notes", + Date: now.Add(-5 * time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1008, + From: "Stripe ", + To: []string{"matcha@floatpane.com"}, + Subject: "Your receipt from Acme Corp - Invoice #4821", + Date: now.Add(-23 * time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1007, + From: "Maria Gonzalez ", + To: []string{"matcha@floatpane.com"}, + Subject: "Design system tokens - final version attached", + Date: now.Add(-1*24*time.Hour - 6*time.Hour), + MessageID: "", + AccountID: "demo-user", + Attachments: []fetcher.Attachment{ + {Filename: "design-tokens-v3.json", MIMEType: "application/json"}, + }, + }, + { + UID: 1006, + From: "Linear ", + To: []string{"matcha@floatpane.com"}, + Subject: "MAT-342: Implement keyboard shortcuts for compose view", + Date: now.Add(-2*24*time.Hour - 3*time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1005, + From: "James Wright ", + To: []string{"matcha@floatpane.com"}, + Subject: "Onboarding docs are ready for review", + Date: now.Add(-3*24*time.Hour - 1*time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1004, + From: "Vercel ", + To: []string{"matcha@floatpane.com"}, + Subject: "Deployment successful: matcha-docs-8f3a2b1", + Date: now.Add(-4*24*time.Hour - 8*time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1003, + From: "Lena Muller ", + To: []string{"matcha@floatpane.com"}, + Subject: "Conference talk proposal - Rethinking TUI Design", + Date: now.Add(-5*24*time.Hour - 2*time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1002, + From: "GitHub ", + To: []string{"matcha@floatpane.com"}, + Subject: "[floatpane/matcha] Release v1.4.0 published", + Date: now.Add(-5*24*time.Hour - 14*time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + { + UID: 1001, + From: "Omar Hassan ", + To: []string{"matcha@floatpane.com"}, + Subject: "Re: Open source contribution guidelines", + Date: now.Add(-6*24*time.Hour - 5*time.Hour), + MessageID: "", + AccountID: "demo-user", + }, + } + + folders := []string{ + "INBOX", + "Drafts", + "Sent", + "Archive", + "Receipts", + "GitHub", + "Trash", + } + + folderInbox := tui.NewFolderInbox(folders, accounts) + folderInbox.SetEmails(emails, accounts) + + p := tea.NewProgram(wrapper{folderInbox: folderInbox}) + if _, err := p.Run(); err != nil { + fmt.Fprintf(os.Stderr, "Error: %v\n", err) + os.Exit(1) + } +} diff --git a/screenshots/common.tape b/screenshots/common.tape new file mode 100644 index 0000000000000000000000000000000000000000..2a693b27d754d5f96c5c180219f0a73e865efcb1 --- /dev/null +++ b/screenshots/common.tape @@ -0,0 +1,14 @@ +# Common VHS settings shared across all screenshot tapes +# This file documents the shared settings - each tape includes them directly +# because VHS does not support tape imports. + +# Terminal settings: +# Set FontSize 14 +# Set FontFamily "JetBrainsMono Nerd Font" +# Set Width 1400 +# Set Height 800 +# Set Theme "Catppuccin Mocha" +# Set Padding 20 +# Set WindowBar Colorful +# Set WindowBarSize 40 +# Set BorderRadius 10 diff --git a/screenshots/compose_email.tape b/screenshots/compose_email.tape new file mode 100644 index 0000000000000000000000000000000000000000..9ecab839e39e35f3b3ac8c5c480484e8a8d9816c --- /dev/null +++ b/screenshots/compose_email.tape @@ -0,0 +1,71 @@ +# Screenshot: Email Composition +# Shows the compose screen with Markdown content being written + +Output screenshots/compose_email.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ." +Enter +Show + +Sleep 2s + +# Navigate to Compose Email +Down +Sleep 300ms +Enter +Sleep 1.5s + +# Type recipient +Type "alice@example.com" +Sleep 200ms +Tab +Sleep 200ms +Tab +Sleep 100ms +Tab +Sleep 200ms + +# Type subject +Type "Weekly Project Update" +Sleep 200ms +Tab +Sleep 300ms + +# Type email body with Markdown +Type "# Project Update" +Enter +Enter +Type "Hi team, here's our **weekly update**:" +Enter +Enter +Type "## Completed" +Enter +Type "- Shipped new dashboard redesign" +Enter +Type "- Fixed authentication bug in production" +Enter +Type "- Added unit tests for core modules" +Enter +Enter +Type "## In Progress" +Enter +Type "- API rate limiting implementation" +Enter +Type "- Database migration planning" +Enter +Enter +Type "Best regards" +Sleep 800ms + +Screenshot screenshots/compose_email.png diff --git a/screenshots/compose_empty.tape b/screenshots/compose_empty.tape new file mode 100644 index 0000000000000000000000000000000000000000..ee5275ac274571a95677fd131b619274115d7583 --- /dev/null +++ b/screenshots/compose_empty.tape @@ -0,0 +1,29 @@ +# Screenshot: Empty Compose Screen +# Shows the clean compose interface before typing + +Output screenshots/compose_empty.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ." +Enter +Show + +Sleep 2s + +# Navigate to Compose Email +Down +Sleep 300ms +Enter +Sleep 1.5s + +Screenshot screenshots/compose_empty.png diff --git a/screenshots/drafts.tape b/screenshots/drafts.tape new file mode 100644 index 0000000000000000000000000000000000000000..02d0e4ddf1808066cd99b16f77ee6d1cf81c75f3 --- /dev/null +++ b/screenshots/drafts.tape @@ -0,0 +1,32 @@ +# Screenshot: Drafts View +# Shows the drafts management screen + +Output screenshots/drafts.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ." +Enter +Show + +Sleep 2s + +# Navigate to Drafts (3rd menu item when drafts exist) +Down +Sleep 300ms +Down +Sleep 300ms +Enter + +Sleep 1.5s + +Screenshot screenshots/drafts.png diff --git a/screenshots/email_view.tape b/screenshots/email_view.tape new file mode 100644 index 0000000000000000000000000000000000000000..58812b7742557be6040b3f0750f59309fb25d743 --- /dev/null +++ b/screenshots/email_view.tape @@ -0,0 +1,24 @@ +# Screenshot: Email View with Inline Images +# Shows an HTML email with formatted content, inline image placeholders, +# attachments list, and hyperlinks + +Output screenshots/email_view.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ./screenshots/cmd/email_view" +Enter +Show + +Sleep 2.5s + +Screenshot screenshots/email_view.png diff --git a/screenshots/inbox_view.tape b/screenshots/inbox_view.tape new file mode 100644 index 0000000000000000000000000000000000000000..23cb0181378b68ff1cfd7c02b25b36ff17f680f1 --- /dev/null +++ b/screenshots/inbox_view.tape @@ -0,0 +1,23 @@ +# Screenshot: Inbox View +# Shows a populated inbox with emails from various senders and dates + +Output screenshots/inbox_view.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ./screenshots/cmd/inbox_view" +Enter +Show + +Sleep 2.5s + +Screenshot screenshots/inbox_view.png diff --git a/screenshots/main_menu.tape b/screenshots/main_menu.tape new file mode 100644 index 0000000000000000000000000000000000000000..d8acf072e31c53289aa3c5d035b626461746da0a --- /dev/null +++ b/screenshots/main_menu.tape @@ -0,0 +1,23 @@ +# Screenshot: Main Menu +# Shows the main menu / choice screen with all navigation options + +Output screenshots/main_menu.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ." +Enter +Show + +Sleep 2s + +Screenshot screenshots/main_menu.png diff --git a/screenshots/settings.tape b/screenshots/settings.tape new file mode 100644 index 0000000000000000000000000000000000000000..e633248dcd2da463404b11b4ef7dca2e34dfa8d4 --- /dev/null +++ b/screenshots/settings.tape @@ -0,0 +1,35 @@ +# Screenshot: Settings Screen +# Shows the settings / account management view + +Output screenshots/settings.gif + +Set FontSize 14 +Set FontFamily "JetBrainsMono Nerd Font" +Set Width 1400 +Set Height 800 +Set Theme "Catppuccin Mocha" +Set Padding 20 +Set WindowBar Colorful +Set WindowBarSize 40 +Set BorderRadius 10 + +Hide +Type "go run ." +Enter +Show + +Sleep 2s + +# Navigate to Settings (3rd item if no drafts, 4th if drafts exist) +# In CI we create dummy drafts, so: Inbox -> Compose -> Drafts -> Settings +Down +Sleep 300ms +Down +Sleep 300ms +Down +Sleep 300ms +Enter + +Sleep 1.5s + +Screenshot screenshots/settings.png