Skip to content

feat: Add platform support display and Compatible filter#22

Open
arimxyer wants to merge 13 commits intohzqtc:mainfrom
arimxyer:feature/platform-support
Open

feat: Add platform support display and Compatible filter#22
arimxyer wants to merge 13 commits intohzqtc:mainfrom
arimxyer:feature/platform-support

Conversation

@arimxyer
Copy link
Copy Markdown

Summary

This PR adds platform/environment support information to Taproom, allowing users to:

  • See which platforms (macOS, Linux) and architectures (arm64, x86_64) a package supports in the details panel
  • Filter packages by compatibility with their current system using the new "Compatible" filter (m key)

Changes

  • Data model: Added Platform struct with OS and Arch fields, plus Platforms and MinMacOSVersion fields to Package
  • API parsing: Extended apiFormula to parse bottle.stable.files and apiCask to parse variations and depends_on.macos
  • Platform detection: Added CurrentPlatform() helper that uses runtime.GOOS and runtime.GOARCH
  • Details panel: Shows "Platforms: macOS (arm64, x86_64), Linux (arm64, x86_64)" when available, including minimum macOS version for casks
  • New filter: Press m to show only packages compatible with your current system

How it works

For Formulae

Parses bottle.stable.files keys like arm64_sequoia, x86_64_linux to determine platform support.

For Casks

Parses variations keys for platform support, plus depends_on.macos.>= for minimum macOS version requirements.

Test plan

  • go build ./... passes
  • go test ./... passes
  • go vet ./... passes
  • Manual testing: Verify platform info displays in details panel for packages like ripgrep
  • Manual testing: Verify m filter shows only packages compatible with current system

🤖 Generated with Claude Code

arimxyer and others added 13 commits January 26, 2026 10:52
Documents the approach for adding platform/environment support
to Taproom, including details panel display and "Compatible" filter.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Prepare for feature branch development using git worktrees.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Detailed step-by-step plan for adding platform/environment support
to Taproom, including details panel display and Compatible filter.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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.

1 participant