Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Command-Line Apps
  3. portal

portal

MITGov1.2.3

A command-line utility for secure, encrypted file transfers between computers with direct or relayed connections.

Visit WebsiteGitHubGitHub
1.7k stars52 forks0 contributors

What is portal?

Portal is a command-line file transfer utility that securely sends files and folders between computers using end-to-end encryption. It establishes direct connections when possible (e.g., on the same local network) or uses a relay server as a fallback, ensuring fast and private transfers.

Target Audience

Developers, system administrators, and technical users who need a quick, secure way to transfer files between machines via the command line without relying on cloud storage or email.

Value Proposition

Portal offers a seamless, encrypted transfer experience with zero configuration for direct transfers, a self-hostable relay option, and an intuitive terminal interface, making it a reliable alternative to traditional file-sharing methods.

Overview

Portal is a quick and easy command-line file transfer utility from any computer to another 🌌 ✨

Use Cases

Best For

  • Transferring files between computers on the same local network
  • Sending sensitive files with end-to-end encryption
  • Quick ad-hoc file sharing without cloud storage
  • Command-line users who prefer terminal-based tools
  • Self-hosting a file transfer relay for privacy
  • Automating file transfers in scripts or workflows

Not Ideal For

  • Users requiring a graphical interface for file transfers
  • Environments with strict firewalls blocking both direct and relay connections
  • Long-term file storage or sharing via permanent, accessible links
  • Fully automated workflows needing API-based integration without CLI interaction

Pros & Cons

Pros

End-to-End Encryption

Uses PAKE2 for password-authenticated key agreement, ensuring files are encrypted before transfer and the relay never sees contents, as detailed in the technical explanation.

Direct Local Transfers

Automatically establishes peer-to-peer connections on the same network, bypassing the relay for faster transfers, demonstrated in the demo GIF for same-network scenarios.

Self-Hostable Relay

Allows users to host custom relay servers with 'portal serve', providing control over data routing and privacy, as shown in the configuration and hosting instructions.

Interactive TUI

Offers a visually rich terminal interface with real-time progress updates, enhancing user experience during transfers, highlighted in the features as a 'shiny UI'.

Cons

Network Dependency

Relies on either direct network access or a functioning relay server; transfers fail if both are blocked, and the README admits fallback reliance without offline alternatives.

No Resume Functionality

Lacks built-in support for resuming interrupted transfers, which could be inefficient for large files, as the README does not mention any checkpoint or resume features.

Setup Complexity for Customization

Hosting a custom relay requires manual server management and tools like jq for log parsing, adding overhead compared to simpler, out-of-the-box solutions.

Frequently Asked Questions

Quick Stats

Stars1,749
Forks52
Contributors0
Open Issues16
Last commit1 year ago
CreatedSince 2021

Tags

#data-transfer#command-line-tool#pake#e2e#tui#encryption#secure-transfer#file-transfer#golang#filetransfer#cli#cross-platform#file-sharing#go#p2p#self-hosted#peer-to-peer

Built With

G
Go

Links & Resources

Website

Included in

Command-Line Apps19.2k
Auto-fetched 1 day ago

Related Projects

rclonerclone

"rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files

Stars56,802
Forks5,054
Last commit2 days ago
croccroc

Easily and securely send things from one computer to another :crocodile: :package:

Stars34,744
Forks1,367
Last commit10 days ago
ffsendffsend

:mailbox_with_mail: Easily and securely share files from the command line. A fully featured Firefox Send client.

Stars7,325
Forks206
Last commit5 months ago
sharingsharing

Sharing is a command-line tool to share directories and files from the CLI to iOS and Android devices without the need of an extra client app

Stars1,836
Forks77
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub