A utility I used to create tmux sessions for my various projects. I’ve included the shell script I based this project from as a reference.
There is a default configuration it will use to create 4 windows,
which suits my typical workflow. Or you can create a .dev.json
file
and setup a custom session.
{
"session": "app-name",
"windows": [
{
"name": "first-window-name",
"actions": ["commands to execute in that window"],
"pwd": "./directory/to/change/to",
"select": true // true if you want this window selected after the session starts
},
{
"name": "second-window",
"actions": ["commands to execute in this window"],
"pwd": "./directory/to/change/to",
"select": false
}
]
}
Place the .dev.json
file in the root of your project, then run dev
from the root of your project. It will look for .dev.json
there. If it
does not find it, it will run the default config.
It has recently been updated to look for zellij layouts and launch
that if they are present instead. Put your zellij layout into a
file called .dev.kdl
and if that file is present as opposed to a
.dev.json
then zellij will be launched instead of tmux using the
layout definition in that file.