Skip to content

d0dg3r/NoSuckShell

NoSuckShell

Release Pre-release CI License Tauri 2 Sponsor

NoSuckShell

Cross-platform SSH manager desktop app (Tauri + React) focused on fast host management and clean terminal workflows.

Repository: github.com/d0dg3r/NoSuckShell

Highlights

  • Split workspace — Start with one full-size panel; split recursively (e.g. left / bottom) with a default 60/40 ratio; resizable dividers; drag-and-drop panel reorder (swap).
  • Layout profiles — Save, load, and delete layouts with hosts (geometry + host/session mapping) or layout only (geometry).
  • SSH integration — Hosts from ~/.ssh/config, embedded terminals (xterm), local shell sessions, quick connect.
  • Encrypted backups — Export/import is password-protected; plain legacy JSON backups are rejected on purpose.
  • Cross-platform — Linux, macOS, and Windows builds via GitHub Releases.

Screenshots

NoSuckShell host list with an embedded SSH session

Split workspace with SSH and local terminal panes   Layout command center for saved layouts

More sizes (Flathub downscales, Microsoft/Snap 1920×1080), captions for AppStream, video notes, and regeneration commands: docs/media/screenshots/README.md.

Install

From GitHub Releases (recommended)

Download the latest Release or Pre-release asset for your platform from the Releases page.

From source (developers)

Requirements

  • Node.js and npm (for the desktop app under apps/desktop)
  • Rust stable, Cargo, and Tauri 2 prerequisites for your OS

From the repository root, the first npm run tauri:dev / desktop:build can install dependencies under apps/desktop automatically if they are missing. You can still install explicitly:

npm run desktop:install
WEBKIT_DISABLE_DMABUF_RENDERER=1 npm run tauri:dev

On some Linux setups (e.g. certain WebKit builds), WEBKIT_DISABLE_DMABUF_RENDERER=1 avoids blank or unstable webviews; omit if you do not need it.

Or from apps/desktop:

cd apps/desktop
npm install
npm run tauri:dev

Validate locally

cd apps/desktop
npm test
npm run build
cd src-tauri
cargo test
cargo check

From the repo root you can run npm run desktop:test for the desktop package tests.

Backup security

  • Backup export/import is password protected and encrypted.
  • Unencrypted legacy JSON backups are intentionally rejected.
  • Backup path handling supports ~ expansion and cross-platform path normalization.

Details: docs/backup-security.md

Release process (maintainers)

GitHub releases are created by pushing a SemVer tag:

  • Final: vMAJOR.MINOR.PATCH (example: v1.2.3)
  • Pre-release: vMAJOR.MINOR.PATCH-<suffix> (example: v1.2.4-rc.1, v0.1.0-beta.7)

Current pre-release line: v0.1.0-beta.7 (push the tag when you want CI to publish binaries). Changelog: docs/CHANGELOG.md.

git tag v0.1.0-beta.7
git push origin v0.1.0-beta.7

Full checklist: docs/releases.md

If the workflow rejects the tag, use vMAJOR.MINOR.PATCH or vMAJOR.MINOR.PATCH-prerelease (example: v2.0.0 or v2.0.0-rc.1).

Documentation

Resource Description
docs/README.md Documentation index
docs/CHANGELOG.md Release notes
docs/architecture.md App architecture (Tauri, React, Rust, IPC)
docs/STYLE_GUIDE.md / docs/CODE_GUIDE.md Style and implementation guides
AGENTS.md IDE / agent entry point
CONTRIBUTING.md Setup, validation, pull requests
SECURITY.md Reporting vulnerabilities
CODE_OF_CONDUCT.md Community standards

License and optional add-ons

The source code is under the MIT License. A few built-in plugins can be unlocked in official binaries with a signed license token after a small purchase (for example via Ko-fi); see docs/licensing.md and the maintainer template docs/terms-of-sale.md.

Support the project

If NoSuckShell is useful to you:

About

Cross-platform SSH manager desktop app (Tauri + React) focused on fast host management and clean terminal workflows.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors