SLTerm

module
v0.18.0 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2026 License: Apache-2.0

README ΒΆ

SLTerm Logo

SLTerm

Open-Source Modern Terminal by Salyvn

Release License Downloads


SLTerm is a modern, feature-rich terminal built on Electron. It combines the power of a traditional terminal with a graphical workspace β€” file previews, web browsing, and rich customization β€” all in one window.

✨ Features

  • Drag & Drop Workspace β€” Organize terminal blocks, editors, and web browsers in a flexible tiled layout
  • Built-in Editor β€” Edit local and remote files with syntax highlighting
  • Rich File Previews β€” Markdown, images, video, PDFs, CSVs, directories
  • One-Click SSH Connections β€” Full terminal and file system access to remote servers
  • 🌐 i18n Support β€” English & Vietnamese, with easy extension to more languages
  • 🎨 Theming β€” 18 built-in themes, custom backgrounds, transparency, and blur effects
  • Command Blocks β€” Isolate and monitor individual commands
  • wsh CLI β€” Powerful command system for managing your workspace from the terminal
  • NSIS Installer β€” Professional Windows installer with custom install directory

πŸ“₯ Installation

Windows

Download the latest installer from Releases:

File Description
SLTerm-win32-x64-*.exe NSIS Installer (recommended)
SLTerm-win32-x64-*.zip Portable ZIP

Minimum Requirements

  • Windows 10 1809 or later (x64)
  • macOS 11 or later (arm64, x64)
  • Linux glibc-2.28+ (Debian 10, Ubuntu 20.04, RHEL 8)

πŸ› οΈ Building from Source

# Clone
git clone https://github.com/SalyyS1/SLTerm.git
cd SLTerm

# Install dependencies
npm install

# Development
npm run dev

# Production build
npm run build:prod

# Build installer (Windows)
npx electron-builder --win --x64 --config electron-builder.config.cjs

See BUILD.md for detailed instructions.

🌐 Internationalization (i18n)

SLTerm supports multiple languages:

Language Status
English βœ… Complete
TiαΊΏng Việt βœ… Complete

Switch languages instantly in Settings β†’ Language β€” no restart required.

To add a new language, create a JSON file in frontend/i18n/locales/ following the structure of en.json.

πŸ“ Project Structure

SLTerm/
β”œβ”€β”€ emain/          # Electron main process
β”œβ”€β”€ frontend/       # React frontend
β”‚   β”œβ”€β”€ app/        # Main application components
β”‚   β”œβ”€β”€ i18n/       # Internationalization (locales)
β”‚   └── logos/      # App logos
β”œβ”€β”€ pkg/            # Go backend packages
β”œβ”€β”€ cmd/            # Go entry points (wavesrv, wsh)
β”œβ”€β”€ assets/         # Branding assets
└── build/          # Build resources (icons)

πŸ“ License

SLTerm is licensed under the Apache-2.0 License.

Based on Wave Terminal β€” forked and customized by Salyvn.

πŸ™ Acknowledgements

See ACKNOWLEDGEMENTS.md for the full list of dependencies and credits.

Directories ΒΆ

Path Synopsis
cmd
generatego command
generateschema command
generatets command
packfiles command
server command
test command
test-conn command
wsh command
pkg
baseds
used for shared datastructures
used for shared datastructures
genconn
generic connection code (WSL + SSH)
generic connection code (WSL + SSH)
ijson
implements incremental json format
implements incremental json format
util/bufferpool
Package bufferpool provides tiered sync.Pool byte buffer pools to reduce GC pressure in high-throughput paths (PTY output reading, WebSocket writes, stream management).
Package bufferpool provides tiered sync.Pool byte buffer pools to reduce GC pressure in high-throughput paths (PTY output reading, WebSocket writes, stream management).
util/iochan
allows for streaming an io.Reader to a channel and an io.Writer from a channel
allows for streaming an io.Reader to a channel and an io.Writer from a channel
util/pamparse
Package pamparse provides functions for parsing environment files in the format of /etc/environment, /etc/security/pam_env.conf, and ~/.pam_environment.
Package pamparse provides functions for parsing environment files in the format of /etc/environment, /etc/security/pam_env.conf, and ~/.pam_environment.
wcore
wave core application coordinator
wave core application coordinator
web
wps
wave pubsub system
wave pubsub system
wshrpc
types and methods for wsh rpc calls
types and methods for wsh rpc calls
wsl
tsunami module

Jump to

Keyboard shortcuts

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