{"id":47723376,"url":"https://github.com/macnev2013/anyscp","last_synced_at":"2026-06-07T10:01:20.924Z","repository":{"id":348194640,"uuid":"1196135293","full_name":"macnev2013/anySCP","owner":"macnev2013","description":"Free, open-source SSH terminal, SFTP file manager \u0026 S3 browser for macOS, Windows \u0026 Linux. Alternative to Termius.","archived":false,"fork":false,"pushed_at":"2026-05-29T07:54:43.000Z","size":6289,"stargazers_count":70,"open_issues_count":14,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-29T10:24:44.464Z","etag":null,"topics":["cloud-storage","desktop-app","file-manager","open-source","port-forwarding","putty-alternative","react","rust","s3","sftp","ssh","ssh-client","tauri","terminal","termius-alternative","winscp","winscp-alternative"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/macnev2013.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-30T12:05:57.000Z","updated_at":"2026-05-29T07:54:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/macnev2013/anySCP","commit_stats":null,"previous_names":["macnev2013/anyscp"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/macnev2013/anySCP","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macnev2013%2FanySCP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macnev2013%2FanySCP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macnev2013%2FanySCP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macnev2013%2FanySCP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/macnev2013","download_url":"https://codeload.github.com/macnev2013/anySCP/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macnev2013%2FanySCP/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33731998,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-storage","desktop-app","file-manager","open-source","port-forwarding","putty-alternative","react","rust","s3","sftp","ssh","ssh-client","tauri","terminal","termius-alternative","winscp","winscp-alternative"],"created_at":"2026-04-02T19:56:14.468Z","updated_at":"2026-05-31T13:00:49.794Z","avatar_url":"https://github.com/macnev2013.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"screens/header.png\" alt=\"AnySCP\" width=\"100%\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eA modern desktop client for SSH, SFTP, and S3 with a clean, powerful interface\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#features\"\u003eFeatures\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#screenshots\"\u003eScreenshots\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#building\"\u003eBuilding\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/macnev2013/anySCP/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/macnev2013/anySCP\" alt=\"Release\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/macnev2013/anySCP/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/downloads/macnev2013/anySCP/total\" alt=\"Downloads\"/\u003e\u003c/a\u003e\n  \u003cimg src=\"https://img.shields.io/badge/platform-macOS%20%7C%20Windows%20%7C%20Linux-blue\" alt=\"Platform\"/\u003e\n  \u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-MIT-green\" alt=\"License MIT\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/macnev2013/anySCP/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/macnev2013/anySCP?style=social\" alt=\"Stars\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Free and open-source alternative to Termius, PuTTY, and WinSCP.\u003cbr/\u003e\n  A cross-platform SSH client, SFTP file manager, and S3 desktop browser with split panes, drag-and-drop uploads, and command snippets.\n\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"screens/anyscp.gif\" alt=\"AnySCP Demo\" width=\"800\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cem\u003eSSH terminals, SFTP file management, and S3 cloud storage -- all in one app.\u003c/em\u003e\u003c/p\u003e\n\n---\n\n## 🚀 Overview\n\nAnySCP is a free, open-source desktop application that combines an SSH terminal, SFTP file explorer, and S3-compatible cloud storage browser into a single, fast, privacy-first tool. Built with Tauri v2 (Rust backend + React frontend), it runs natively on macOS, Windows, and Linux. No cloud accounts, no subscriptions -- your credentials stay on your machine.\n\n## ⚡ How AnySCP Compares\n\n| Feature | AnySCP | Termius | PuTTY | WinSCP | Cyberduck |\n|---------|--------|---------|-------|--------|-----------|\n| SSH Terminal | Yes | Yes | Yes | No | No |\n| SFTP Browser | Yes | Yes | No | Yes | Yes |\n| S3 Browser | Yes | No | No | No | Yes |\n| Split Panes | Yes | Yes | No | No | No |\n| Port Forwarding | Yes | Yes | Yes | No | No |\n| Command Snippets | Yes | Yes | No | No | No |\n| Cross-Platform | Yes | Yes | Windows | Windows | Yes |\n| Free (no limits) | Yes | No | Yes | Yes | Yes |\n| No Account Required | Yes | No | Yes | Yes | Yes |\n| Open Source | Yes | No | Yes | Yes | Yes (GPL) |\n| Credential Privacy | Local (OS keychain) | Cloud-synced | Local | Local | Local |\n\n## ✨ Features\n\n### 💻 SSH Terminal Client\n- Full-featured terminal emulator powered by xterm.js with GPU-accelerated WebGL rendering\n- Split terminal panes (horizontal and vertical) within a single SSH session\n- In-terminal search with regex support\n- Tabbed SSH sessions with keyboard shortcuts\n- Configurable keep-alive intervals, startup commands, default shell, and proxy jump (bastion host)\n- SSH key authentication with automatic PPK-to-OpenSSH conversion\n- Import connections from `~/.ssh/config`\n\n### 📁 SFTP File Manager\n- Browse, upload, download, rename, move, copy, and delete remote files and directories\n- Drag-and-drop file upload from your desktop directly into the remote file browser\n- Multi-select files with Ctrl+Click and Shift+Click for bulk operations\n- Cut, copy, and paste files between remote directories\n- Inline file and folder creation\n- Edit remote files in VS Code -- automatically re-uploads when you save\n- Transfer queue with real-time progress bars, transfer speed, and ETA\n- Concurrent file transfers with configurable parallelism\n\n### ☁️ S3 Cloud Storage Browser\n- Connect to **Amazon S3**, **MinIO**, **Cloudflare R2**, **Backblaze B2**, **Wasabi**, **DigitalOcean Spaces**, or any S3-compatible storage service\n- Same file browser UI as SFTP -- sort, multi-select, context menus, keyboard shortcuts\n- Drag-and-drop upload with recursive directory support\n- Create files, create folders, bulk delete (including recursive folder delete)\n- Generate and copy presigned URLs for sharing\n- Edit S3 objects in VS Code with automatic re-upload on save\n- Transfer progress tracking with speed and ETA\n- Switch between multiple buckets within a single connection\n\n### 🔗 Server \u0026 Connection Management\n- Save SSH hosts and S3 connections with labels, colors, environment tags, and notes\n- Organize connections into color-coded groups\n- Import SSH hosts from `~/.ssh/config` with one click\n- One-click connect using credentials stored in your OS keychain\n- Recent connections list for quick access\n- Full connection history with audit log\n\n### 📋 Command Snippets Library\n- Save frequently used shell commands with labels and descriptions\n- Create parameterized command templates with `{{variable}}` placeholders\n- Organize snippets into folders\n- Quick-insert panel accessible from any terminal session\n- Full-text search across all saved snippets\n\n### 🔀 SSH Port Forwarding\n- Set up local and remote SSH tunnels\n- Create, start, and stop port forwarding rules per host\n- Tunnels create their own SSH connections automatically -- no terminal session needed\n- Monitor active tunnel status in real time\n- Presets for common services (PostgreSQL, MySQL, Redis, MongoDB, HTTP, Kubernetes)\n\n### 🔐 Security \u0026 Privacy\n- Credentials stored in your **OS keychain** (macOS Keychain, Windows Credential Manager, Linux libsecret/KWallet)\n- SSH private keys and passwords never leave the Rust backend process\n- Fully offline -- no internet connection required after installation\n- Open source -- audit the code yourself\n\n## 📸 Screenshots\n\n| Connection Manager | SSH Terminal |\n|:--:|:--:|\n| ![Connection Manager](screens/hosts.png) | ![SSH Terminal](screens/terminal.png) |\n| *Organize servers with groups, colors, and tags* | *Split panes, search, and tabbed sessions* |\n\n| File Explorer | Command Snippets |\n|:--:|:--:|\n| ![File Explorer](screens/explorer.png) | ![Snippets](screens/snippets.png) |\n| *SFTP \u0026 S3 with drag-drop, context menus* | *Parameterized templates with quick-insert* |\n\n## 📥 Installation\n\n### Download\n1. Download the latest release from the [Releases](https://github.com/macnev2013/anySCP/releases) page\n2. Choose the right file for your platform:\n   - **macOS (Apple Silicon)**: `.dmg` (aarch64)\n   - **macOS (Intel)**: `.dmg` (x64)\n   - **Windows**: `.msi` or `.exe`\n   - **Linux**: `.deb` or `.AppImage`\n3. Install and launch\n\n\u003e **macOS note**: If you see \"app is damaged\", run: `xattr -cr /Applications/anyscp.app`\n\n### Requirements\n- macOS 11+, Windows 10+, or Linux (Ubuntu 22.04+)\n- For SFTP: SSH access to remote servers\n- For S3: Access key and secret key (or S3-compatible credentials)\n\n## 🔨 Building\n\n### Prerequisites\n- [Node.js](https://nodejs.org) 18+\n- [pnpm](https://pnpm.io)\n- [Rust](https://rustup.rs) (latest stable)\n- Platform-specific Tauri dependencies: [Tauri prerequisites](https://v2.tauri.app/start/prerequisites/)\n\n### Build Instructions\n\n```bash\n# Clone the repository\ngit clone https://github.com/macnev2013/anyscp.git\ncd anyscp\n\n# Install frontend dependencies\npnpm install\n\n# Run in development mode (hot-reload)\npnpm tauri dev\n\n# Build for production (generates platform-specific installer)\npnpm tauri build\n```\n\n## 🛠 Tech Stack\n\n| Layer | Technology |\n|-------|-----------|\n| Desktop runtime | [Tauri v2](https://v2.tauri.app) |\n| Backend | Rust (tokio, russh, russh-sftp, rust-s3, rusqlite) |\n| Frontend | React 19, TypeScript (strict), Tailwind CSS v4 |\n| Terminal | xterm.js with WebGL renderer |\n| State management | Zustand |\n| Credential storage | OS keychain via `keyring` crate |\n| Database | SQLite (bundled, zero config) |\n\n## 🏗 Architecture\n\nAnySCP follows a strict frontend/backend separation:\n\n- **Rust does the heavy lifting** -- all SSH, SFTP, S3, encryption, and file I/O runs in Rust\n- **React is a thin view layer** -- renders UI and manages local state via Zustand\n- **Tauri IPC** bridges the two with type-safe commands (request/response) and events (server push)\n- **Credentials never cross the IPC boundary** -- the frontend never sees passwords or private keys\n- **Shared `FileSystemProvider` abstraction** -- SFTP and S3 browsers use identical UI components with capability flags that show/hide features per protocol\n\n### Project Structure\n\n```\nsrc/                          # React frontend\n  components/\n    terminal/                 # SSH terminal, split panes, search\n    explorer/                 # Shared file table, toolbar, drop zone\n    sftp/                     # SFTP browser, session tabs\n    s3/                       # S3 browser, connect dialog\n    dashboard/                # Host cards, groups, connection manager\n    snippets/                 # Command snippet library\n    transfers/                # Transfer progress popover\n  stores/                     # Zustand state stores\n  providers/                  # SFTP \u0026 S3 file system providers\n  types/                      # TypeScript type definitions\n\nsrc-tauri/src/                # Rust backend\n  ssh/                        # SSH connections, PTY, key management\n  sftp/                       # SFTP sessions, transfer manager\n  s3/                         # S3 sessions, transfer manager\n  db/                         # SQLite persistence layer\n  vault/                      # OS keychain integration\n  snippets/                   # Snippet storage\n  portforward/                # SSH tunnel management\n  import/                     # SSH config parser\n```\n\n## 🤝 Contributing\n\nContributions are welcome! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\nPlease open an issue first to discuss what you'd like to change.\n\n## 🐛 Troubleshooting\n\n### SSH Connection Issues\n- **Can't connect**: Verify host, port, username, and credentials\n- **Authentication failed**: Check password or SSH key permissions\n- **Timeout**: Check firewall settings and network connectivity\n\n### S3 Connection Issues\n- **Access Denied**: Verify your access key and secret key are correct\n- **Bucket not found**: Check the bucket name and region settings\n- **Invalid credentials**: Ensure IAM user has S3 permissions\n\n### File Operations\n- **Permission denied**: Ensure your user has appropriate file permissions\n- **Upload failed**: Check available disk space on remote server\n\n### macOS\n- **\"App is damaged\"**: Run `xattr -cr /Applications/anyscp.app`\n\n## 📄 License\n\nThis project is licensed under the MIT License -- see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- Built with [Tauri](https://tauri.app) by the Tauri team\n- SSH implementation powered by [russh](https://github.com/warp-tech/russh)\n- Terminal emulation powered by [xterm.js](https://xtermjs.org)\n- S3 support powered by [rust-s3](https://github.com/durch/rust-s3)\n\n## 💬 Support\n\n- **Issues**: [GitHub Issues](https://github.com/macnev2013/anySCP/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/macnev2013/anySCP/discussions)\n\n---\n\n\u003cp align=\"center\"\u003e\n  If you find AnySCP useful, please consider giving it a \u003ca href=\"https://github.com/macnev2013/anySCP\"\u003estar on GitHub\u003c/a\u003e!\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#top\"\u003eBack to top\u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmacnev2013%2Fanyscp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmacnev2013%2Fanyscp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmacnev2013%2Fanyscp/lists"}