termz
v0.6.0
Published
Setup terminals on your own terms
Readme
termz
Setup terminals on your own terms.
What and why is Termz?
What
Termz is a CLI tool that automatically sets up your terminal sessions for you. Termz aims for a consistent usage across all platforms, and it works with various different IDEs and terminal applications.
Why
Imagine a project where you have to open multiple terminal tabs and run multiple different commands to get started.
It can be annoying to keep setting that up every time you work on the project. With Termz you only have to write a configuration once, and it will automatically open all the required tabs when you run termz.
Installation
npm i -g termz@latestSupported terminals/multiplexers
- Windows Terminal
- VSCode & VSCodium (
v1.70and above)
How to Use
Create a .termz file in your working directory.
Create a .termz file
Autocomplete/JSON Schema
To get autocomplete on the .termz files, add the following to the top of your .termz file.
{
"$schema": "https://raw.githubusercontent.com/Rikthepixel/termz/refs/heads/main/schema.json"
}Example file
{
"$schema": "https://raw.githubusercontent.com/Rikthepixel/termz/refs/heads/main/schema.json",
"tabs": [
{
"displayName": "Backend tab", // Name that should be given to the tab
"script": "nvim", // A script to run in that tab
"exclude": ["vscode"], // Prevents the tab from opening in VSCode
"directory": "./backend", // The working directory that the tab should start in.
"panes": [ // A list of panes/sub-tabs that should be opened
{
"axis": "horizontal", // The axis on which the panes should be split",
"displayName": "Frontend pane",
"script": "nvim",
"exclude": ["vscode"],
"directory": "./frontend"
}
]
},
{
"displayName": "Frontend Dev",
"directory": "./frontend",
"script": "npm run dev"
}
]
}Run the termz command
When running termz, it will automatically look for the .termz file in your current working directory.
termzAlternatively, you can specify a path to the .termz file.
termz foo.termzRoadmaps
V1 Roadmap
- Document
.termzfile format - Support more terminals (drivers):
- GNOME Terminal
- Konsole
- Kitty
- iTerm
V1.1 Roadmap
- Driver specific features
- VSCode:
- Open file-tabs
- VSCode:
- Support multiplexers (drivers):
- tmux
- VSCode plugin acks that it is done running
- Publish on
winget,apt,apk, etc.
