A command-line file transfer utility for sending files between computers with end-to-end encryption and direct or relayed connections.
Portal is a command-line file transfer utility that enables quick and secure file transfers between computers. It simplifies sending files and folders by generating a temporary password for secure sharing, supporting both direct transfers on local networks and relayed connections over the internet. The tool prioritizes simplicity and security with end-to-end encryption and an intuitive terminal interface.
Developers, system administrators, and technical users who frequently need to transfer files between machines via the command line, especially those working in mixed local and remote network environments. It is suitable for users who prefer terminal-based tools over graphical applications.
Developers choose Portal for its combination of security, flexibility, and user experience: it offers end-to-end encryption via PAKE2, automatic direct transfers when possible (falling back to a relay), and a polished terminal UI with real-time progress. Unlike many alternatives, it allows self-hosting of relay servers and provides extensive shell completions for ease of use.
Portal is a quick and easy command-line file transfer utility from any computer to another 🌌 ✨
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses PAKE2 for password-authenticated key exchange, ensuring files remain encrypted even when relayed through third-party servers, as detailed in the technical explanation.
Automatically establishes direct transfers on local networks to reduce latency and bandwidth, demonstrated in the demo GIF where files are sent directly without a relay.
Includes a built-in relay server that can be easily hosted with commands like `portal serve`, allowing custom deployments to avoid public relay limitations, as encouraged in the README.
Features a visually rich TUI with real-time progress bars and event logs, enhancing the command-line experience, as shown in the interactive demo and configurable with `--tui-style`.
Internet transfers require a relay server, and the default public relay may have usage restrictions, forcing self-hosting for high data volumes, as hinted in the README.
Lacks support for resuming interrupted file transfers, a common feature in other tools, which can be problematic for large files or unstable connections.
Exclusively command-line based with no GUI option, making it less accessible for non-technical users or scenarios requiring visual file management.