Skip to content

ByteTrix/process-manager

Repository files navigation

⚑ Process Manager

Home

Manage, monitor, and control long-running commands (dev servers, tunnels, background jobs) from a single interface. Define processes once, start/stop them with a click, view live logs with ANSI colors, track resource usage, and use the built-in PowerShell terminal to run ad-hoc commands that can be promoted into managed processes. Think PM2 or systemd, but with a native GUI.

🎯 Why?

Stop juggling multiple terminal windows or remembering pm2 commands. Define your dev servers, background workers, or tunnels once, then start/stop/monitor them from a clean UI. Perfect for developers running local microservices, Cloudflare tunnels, database instances, or any long-running CLI tools.

✨ Highlights

  • ⚑ Process list with quick start/stop/restart actions
  • πŸ“‘ Real-time stdout/stderr streaming with ANSI color rendering
  • πŸ“Š CPU / memory usage panel with uptime + PID metadata
  • πŸ” Auto-restart and auto-start toggles per process
  • πŸ’Ύ Config save/load persistence
  • πŸ—‚οΈ Minimize-to-tray workflow with tray menu actions
  • πŸ–₯️ Integrated terminal pane (PowerShell-based) with:
    • πŸ• Command history
    • πŸ“¦ Per-command output blocks
    • ⏹️ Stop running command
    • πŸ“ cd session directory handling
    • βž• "Add to processes" for commands you want to manage long-term

πŸ“Έ Screenshots

Task page - logs, metrics & controls Task page

Integrated terminal pane Terminal

πŸ› οΈ Tech Stack

  • ⚑ Desktop shell: Tauri 2 (Rust)
  • 🎨 Frontend: Vue 3 + TypeScript + Pinia
  • πŸ“ˆ Monitoring: sysinfo
  • πŸͺŸ Windows integration: tray icon/menu + registry auto-start (winreg)

πŸ“‹ Requirements

  • πŸͺŸ Windows 10/11
  • 🟒 Node.js 18+
  • πŸ¦€ Rust toolchain (stable)
  • 🌐 WebView2 Runtime (usually already present on modern Windows)

πŸš€ Quick Start

Install dependencies:

bun install

Run desktop app in development:

bun run tauri dev

Frontend-only dev server:

bun run dev

Build production web assets:

bun run build

Build production desktop app:

bun run tauri build

πŸ“– Using the App

⚑ Manage processes

  1. Click New Process in the sidebar.
  2. Enter a name + command (+ optional working directory).
  3. Use row actions to start/stop/restart.
  4. Select a process to inspect logs and metrics in the right panel.

πŸ–₯️ Use the integrated terminal

  1. Click the terminal button (>_) in the titlebar.
  2. Run commands directly in the terminal panel.
  3. Use cd to change terminal session working directory.
  4. Stop an active command with the ⏹ stop button or Ctrl+C.
  5. Click Add to processes to promote useful commands into the managed process list.

⚑ Terminal commands run through PowerShell.

πŸ—ƒοΈ Data & Logs

  • πŸ’Ύ Process configs and logs are stored under your app data directory.
  • πŸ“œ Logs are persisted per-process and streamed live to the UI.

πŸ—‚οΈ Tray Behavior

  • πŸ”½ Closing the window hides the app to tray.
  • πŸ“‹ Tray menu supports show/hide/start all/stop all/quit.
  • πŸ–±οΈ Left-click tray icon brings the main window back.

πŸ“œ Scripts

From package.json:

  • bun run dev β†’ ⚑ Vite dev server
  • bun run build β†’ πŸ”¨ Type-check + production web build
  • bun run preview β†’ πŸ‘οΈ Preview built web assets
  • bun run tauri dev β†’ πŸš€ Run Tauri desktop app in dev mode
  • bun run tauri build β†’ πŸ“¦ Build release desktop bundle

πŸ”§ Troubleshooting

⚑ Terminal command not found

  • Verify the command exists in your PowerShell PATH:
    • Get-Command <tool-name>
  • Restart the app after installing a new CLI tool.

πŸ“­ No logs in panel

  • Confirm process status is Running.
  • Check the command actually writes to stdout/stderr.

πŸ—‚οΈ Tray menu not appearing

  • Right-click the tray icon for the context menu.
  • Left-click is reserved to restore/focus the main window.

πŸ“„ License

MIT