portal

command module
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 30, 2026 License: MIT Imports: 24 Imported by: 0

README

portal

portal is an HTTP proxy and testing tool for exposing local services over Tailscale. It is private by default (tailnet-only) and can be made public with explicit Funnel opt-in.

Installation

Homebrew
brew tap jaxxstorm/tap
brew install portal
From Source
git clone https://github.com/jaxxstorm/portal.git
cd portal
go mod tidy
go build -o portal main.go

Quick Start

# Create a commented configuration template (optional)
portal config init

# Tailnet-only proxy to local service
portal serve 8080

# Tailnet-only proxy through Portal's isolated Tailscale node
portal serve node 8080

# Public internet access with Funnel
portal serve 8080 --funnel

# Mock endpoint for webhook testing (tailnet-only by default)
portal mock

# Mock endpoint with explicit public Funnel exposure
portal mock --funnel

# Remove this node's Tailscale Serve configuration
portal cleanup

portal 8080, portal --mock, and portal --cleanup-serve remain supported for existing scripts. Plain serve and mock commands require the local tailscaled daemon; use portal serve node or portal mock node to run through Portal's isolated Tailscale node.

Documentation

Detailed documentation is in docs/ and can be served with Docsify.

Run Docs Locally
npm install -g docsify-cli
docsify serve docs

Open http://localhost:3000.

Contributing

See CONTRIBUTING.md.
Any user-visible behavior change must include matching updates in docs/.

License

MIT. See LICENSE.

Documentation

Overview

main.go

Directories

Path Synopsis
internal
logging
internal/logging/context.go
internal/logging/context.go
oauthapp
Package oauthapp provides local bootstrap commands for Portal's Tailscale OAuth App integration.
Package oauthapp provides local bootstrap commands for Portal's Tailscale OAuth App integration.
proxy
internal/proxy/server.go
internal/proxy/server.go
stats
internal/stats/tracker.go
internal/stats/tracker.go
tailscale
internal/tailscale/client.go
internal/tailscale/client.go
tui
internal/tui/model.go
internal/tui/model.go
ui
internal/ui/server.go
internal/ui/server.go

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL