Skip to main content

Start all your dev services with one command

Project description

devlauncher

Start all your dev services with one command.

The Problem

Every multi-service project means opening multiple terminals, remembering startup commands, and dealing with silent port conflicts. devlauncher runs everything in one place.

Install

pip install devlauncher

Requires Python 3.10+.

Quickstart

Zero-config — run in any project root:

cd my-project
devlauncher

devlauncher scans your project, detects services (Vite, FastAPI, Django, etc.), shows you what it found, and asks once to confirm. On confirmation it writes a dev.toml and starts everything. It never asks again.

Manual — create a dev.toml:

[services.api]
cmd = "uvicorn main:app --reload --port {self.port}"
port = 8000
cwd = "api"

[services.web]
cmd = "npm run dev -- --port {self.port}"
port = 5173
cwd = "frontend"
env = { VITE_API_URL = "http://localhost:{api.port}" }

Then run:

devlauncher

How It Works

  • Scans subdirectories for framework signals (package.json, requirements.txt, Cargo.toml, etc.)
  • Infers services by role (frontend/backend), shows a discovery report
  • Prompts once to confirm; writes dev.toml so it never asks again
  • Runs dependency install phase (npm install, pip install, etc.) if needed
  • Checks ports on both IPv4 and IPv6 — finds a free port if your preferred one is taken
  • Starts all services with color-coded, prefixed log output
  • Shuts down cleanly on Ctrl+C (SIGTERM → 5s timeout → SIGKILL)

Interactive Commands

Once services are running, press a key:

Key Action
r Soft restart — kill & restart services (no reinstall)
R Hard restart — reinstall deps, re-resolve ports, restart
s Status — show PIDs, ports, uptime, running/crashed
l Filter logs — cycle: all → [SERVICE] → all
q / Ctrl+C Quit — graceful shutdown

Frontend servers (Vite, Next.js, etc.) handle hot-reload automatically — r is mainly useful for backend services.

Agent Awareness (Claude Code)

devlauncher registers an MCP server with Claude Code on first run. When you open a Claude Code session in a project where devlauncher is running, the agent can:

  • Call devlauncher_status() to see which services are running, on which ports — so it doesn't start duplicates
  • Call devlauncher_logs(service, lines) to read recent log output for debugging

Zero configuration required. Works automatically after pip install devlauncher.

See docs/mcp-server.md for full details.

Configuration (dev.toml)

All fields:

[services.<name>]
cmd         = "command to start this service"          # required
port        = 8000                                     # required; preferred port
cwd         = "subdirectory"                           # optional; default is project root
install_cmd = "pip install -r requirements.txt"        # optional; runs when deps are missing
env         = { KEY = "value" }                        # optional; supports port refs

Port references — resolved after conflict detection, so they always reflect the actual port in use:

  • {self.port} — this service's resolved port
  • {api.port} — another service's resolved port (use the service name as the key)

Features

  • Zero-config auto-discovery (Vite, Next.js, Nuxt, FastAPI, Django, Flask, Go, Rust)
  • Dual IPv4 + IPv6 port conflict detection (handles Node.js 18+ IPv6-default binding)
  • Dependency install phase with per-service install_cmd
  • Port reference interpolation ({self.port}, {api.port})
  • Color-coded, prefixed log output per service
  • Graceful shutdown (SIGTERM → 5s timeout → SIGKILL)
  • Cross-platform: macOS, Linux, Windows
  • --version / -V flag
  • MCP server for Claude Code agent awareness (zero config)
  • Dependencies: mcp (all versions), tomli (Python 3.9–3.10 only)

Supported Frameworks (auto-discovery)

Role Detected
Frontend Vite, Next.js, Nuxt, Angular, SvelteKit
Backend FastAPI, Django, Flask, Go, Rust (Cargo)
Package managers npm, yarn, pnpm, bun, pip, go mod

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devlauncher-0.2.0.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devlauncher-0.2.0-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

Details for the file devlauncher-0.2.0.tar.gz.

File metadata

  • Download URL: devlauncher-0.2.0.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for devlauncher-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6c32a9d0c881e3f4c800f4b0b187977174c2583c3a496eb783e0b889da7c4a5d
MD5 0a7dc61f005427346ab784c2ebf65ae7
BLAKE2b-256 794d3a0607b78c26138140704a4c5ee9f73b3d20fd14fc07e8392c864ea11a8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for devlauncher-0.2.0.tar.gz:

Publisher: publish.yml on the-non-expert/devlauncher

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file devlauncher-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: devlauncher-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for devlauncher-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ee036c042ab0eb32b8c4a2fdee40ba3f46f35b87644b8a49c118e6cf5c5215b6
MD5 feb9a4536e77415284cbf4dbca5d409b
BLAKE2b-256 a6ec9df83ea0e092cd44112f7c9d0981b05cd265f95439a4885bddc681af3050

See more details on using hashes here.

Provenance

The following attestation bundles were made for devlauncher-0.2.0-py3-none-any.whl:

Publisher: publish.yml on the-non-expert/devlauncher

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page