From 86c6ad8be12bd9044a7cd1cc1a8638f5e19109c9 Mon Sep 17 00:00:00 2001 From: Lukas May Date: Tue, 3 Mar 2026 12:04:23 +0100 Subject: [PATCH] chore: Switch dev.sh to side-by-side split layout (server | web) --- workdir/dev.sh | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/workdir/dev.sh b/workdir/dev.sh index db349fd..c798d46 100755 --- a/workdir/dev.sh +++ b/workdir/dev.sh @@ -1,9 +1,8 @@ #!/usr/bin/env bash # Start server + frontend in dev mode using tmux. # Run from workdir/ — this directory is the CW workspace. +# Layout: server (left) | web (right) # Usage: ./dev.sh [session-name] -# ./dev.sh → session "cw" -# ./dev.sh myapp → custom session name set -e @@ -21,13 +20,20 @@ if tmux has-session -t "$SESSION" 2>/dev/null; then exec tmux attach-session -t "$SESSION" fi -# Server: runs from workdir/ so cw finds .cwrc here -tmux new-session -d -s "$SESSION" -n server -c "$WORKDIR" -tmux send-keys -t "$SESSION:server" "npx tsx watch $ROOT/apps/server/bin/cw.ts --server" Enter +# Single window, split vertically: server on left, web on right +tmux new-session -d -s "$SESSION" -n dev -c "$WORKDIR" -# Frontend: runs from project root via npm workspace -tmux new-window -t "$SESSION" -n web -c "$ROOT" -tmux send-keys -t "$SESSION:web" "npm run dev --workspace=apps/web" Enter +# Left pane: server (runs from workdir/ so cw finds .cwrc here) +tmux send-keys -t "$SESSION:dev" "npx tsx watch $ROOT/apps/server/bin/cw.ts --server" Enter + +# Right pane: web dev server +tmux split-window -t "$SESSION:dev" -h -c "$ROOT" +tmux send-keys -t "$SESSION:dev" "npm run dev --workspace=apps/web" Enter + +# Give server pane slightly more width (60/40 split) +tmux resize-pane -t "$SESSION:dev.left" -x "60%" + +# Keep focus on server pane +tmux select-pane -t "$SESSION:dev.left" -tmux select-window -t "$SESSION:server" exec tmux attach-session -t "$SESSION"