Skip to content

feat(branding): add app icon, menu-bar SQV mark, and CLOUD TUNNELS wordmark#1

Merged
samfnc merged 1 commit into
FournineCS:mainfrom
saiteja-bellam-1:rebrand/cloud-tunnels-logo
May 11, 2026
Merged

feat(branding): add app icon, menu-bar SQV mark, and CLOUD TUNNELS wordmark#1
samfnc merged 1 commit into
FournineCS:mainfrom
saiteja-bellam-1:rebrand/cloud-tunnels-logo

Conversation

@saiteja-bellam-1
Copy link
Copy Markdown
Contributor

Summary

  • Adds the app icon assets and wires them into the bundle.
  • Replaces the SF Symbol used in the menu-bar with the new SQV mark.
  • Renames the in-app wordmark to "CLOUD TUNNELS".

Test plan

  • make app && open build/CloudTunnels.app — verify Dock/Finder icon renders.
  • Launch app — confirm the menu-bar status item shows the SQV mark (not the prior SF Symbol).
  • Open the popover — confirm the header reads "CLOUD TUNNELS".
  • make test — XCTest suite still green.

🤖 Generated with Claude Code

…k, rename wordmark to "CLOUD TUNNELS"

The bundle had no AppIcon (no .icns, no CFBundleIconFile) and the menu-bar status item used
a generic `cloud`/`cloud.fill` SF Symbol. Adds proper brand assets:

- AppIcon.icns generated from the Cloud Tunnels armadillo source PNG
  (full iconset 16→1024); Info.plist now declares CFBundleIconFile/Name and
  the Makefile copies the .icns into all three bundle paths
  (universal, arm64, x86_64).
- Menu-bar status item now renders the SQV mark as a template image
  (auto-recolors with menu-bar appearance). Active vs idle is expressed
  via opacity instead of filled-vs-outline glyphs. NSImage.size is set
  explicitly to 20×15 because MenuBarExtra ignores SwiftUI .frame() on
  its label and renders at intrinsic size.
- Popover brand header gains the SQV mark inline and the wordmark
  changes from "FOURNINE" to "CLOUD TUNNELS".
- Source SVG/PNG assets checked into Resources/Branding for future
  re-export. Runtime PNGs live in Sources/CloudTunnels/Resources and
  load via Bundle.module (declared in Package.swift resources:).
- BrandImages.swift centralizes template-image loading with a SF
  Symbol fallback so the UI never voids on missing resources.
- CLAUDE.md updated to reflect the 5 SwiftPM targets (was 3) and document
  the ProxyHelperShared/CloudTunnelsProxyHelper additions.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@samfnc samfnc merged commit f48e500 into FournineCS:main May 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants