Skip to content

feat: add bore tunnel provider#8

Merged
sthbryan merged 9 commits into
mainfrom
feat/bore
May 15, 2026
Merged

feat: add bore tunnel provider#8
sthbryan merged 9 commits into
mainfrom
feat/bore

Conversation

@sthbryan
Copy link
Copy Markdown
Owner

@sthbryan sthbryan commented May 12, 2026

Add bore tunnel provider

Features:

  • Downloads binary from GitHub releases
  • Supports macOS, Linux, Windows (arm64 + x86)
  • No account/token required
  • URL format: bore.pub:

sthbryan added 2 commits May 12, 2026 16:20
- Add bore provider for free tunnel access (no signup required)
- Provider downloads binary from GitHub releases
- Supports macOS (arm64/x86), Linux (arm64/x86), Windows
- Auto-extracts tar.gz archives
- Parse URL from logs with regex bore.pub:\d+
- Add bore to form provider navigation
- Add i18n translations for bore provider name
Copilot AI review requested due to automatic review settings May 12, 2026 22:23
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new bore tunnel provider to the app, including auto-installation from upstream GitHub Releases and wiring it into the process manager and UI/i18n so users can select it like existing providers.

Changes:

  • Added internal/providers/bore provider implementation (start process, URL parsing, binary discovery).
  • Added a bore installer that downloads release artifacts and extracts the bore executable.
  • Registered the provider across config, manager wiring, UI provider navigation, and translations; added shared downloader helpers for extraction.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
internal/providers/downloader.go Exposes download helper and adds tar.gz extraction helper for provider installers.
internal/providers/bore/installer.go Implements bore binary download + install logic per OS/arch.
internal/providers/bore/bore.go Implements the Bore provider (start, parse URL, install hooks).
internal/process/manager.go Registers the Bore provider in the provider map.
internal/i18n/locales/es.yaml Adds Spanish translation key for bore provider label.
internal/i18n/locales/en.yaml Adds English translation key for bore provider label.
internal/i18n/helpers.go Maps bore provider id to i18n key.
internal/config/tunnel.go Adds ProviderBore constant.
internal/app/form.go Adds bore to provider selection navigation order.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread internal/providers/bore/installer.go
Comment thread internal/providers/bore/installer.go
Comment thread internal/providers/downloader.go Outdated
Comment thread internal/providers/downloader.go Outdated
sthbryan added 3 commits May 12, 2026 16:43
- Add IsInstalled() and Install() methods to implement AutoInstaller interface
- Remove direct Install() call from Start() so UI can show download progress
- Now cloudflared shows downloading screen like bore/tunnelmole
@sthbryan sthbryan requested a review from Copilot May 13, 2026 01:05
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 13 out of 13 changed files in this pull request and generated 3 comments.

Comment thread internal/providers/downloader.go Outdated
Comment thread internal/providers/bore/bore.go
Comment thread internal/providers/bore/installer.go
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces support for the "bore" tunnel provider, including binary installation logic for various platforms and integration into the UI and process manager. It also refactors the provider installation system to use shared archive extraction and downloading utilities. Feedback includes suggestions to avoid hardcoded versions, improve architecture support for Windows, use sentinel errors instead of magic strings, and properly handle file closure errors during extraction.

Comment thread internal/providers/bore/installer.go Outdated
Comment thread internal/providers/bore/installer.go
Comment thread internal/providers/cloudflared/cloudflared.go
Comment thread internal/providers/downloader.go Outdated
@sthbryan sthbryan self-assigned this May 15, 2026
@sthbryan sthbryan merged commit add8cdd into main May 15, 2026
4 checks passed
@sthbryan sthbryan deleted the feat/bore branch May 15, 2026 06:35
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