turnout
A developer's switchyard: point local apps at any backend stand, keep servers and secrets at hand, build and deploy - from any directory.
Status: early development. The CLI skeleton is in place; the entity model, secrets and the dev gateway are being built - see the roadmap below.
Why
Day-to-day work with several backend stands is scattered:
- to run a project you have to
cdinto its folder; - to switch a stand you edit
.envfiles across repositories; - to deploy you must remember configs, passwords and server paths;
- to copy a login or password you dig through notes and chats.
turnout puts all of it into one CLI that works from any directory:
- Dev gateway. Your apps always talk to
localhost; turnout routes requests to the selected stand. Switching a stand is one command - and sessions survive it, because the gateway keeps a cookie jar per app+server pair. - Secrets in the OS keyring (Windows Credential Manager / macOS Keychain / Linux Secret Service). Copy a password to the clipboard with one command; nothing is stored in plain files.
- App commands anywhere.
dev,build,test,lintand custom commands run in the right project folder for you. - Deploy. Build, package, upload over SSH/SFTP, restart the service - using the same apps, servers and secrets.
Install
One-line installers. Windows (PowerShell):
irm https://raw.githubusercontent.com/lacodda/turnout/main/tools/install.ps1 | iex
macOS / Linux:
|
With npm:
With cargo:
Binary releases - grab the archive for your platform from Releases (Windows x86_64, Linux x86_64, macOS arm64), unpack and put turnout on your PATH.
Quick start
Data lives in the platform user data directory (e.g. %LOCALAPPDATA%\lacodda\turnout on Windows); set TURNOUT_DATA_DIR to override.
Roadmap
- CLI skeleton:
setup,status - Apps and servers: CRUD with interactive wizards
- Secrets: OS keyring storage, copy to clipboard
- Dev gateway: per-stand cookie jars, self-signed HTTPS, redirect rewriting
-
use- bind an app to a stand with one command - Gateway: WebSocket proxying
- App commands:
dev/build/test/lintfrom any directory - Deploy: build, upload over SSH/SFTP, restart
- Deploy: remote backup and restore
- Shell completions
- App groups: switch a whole contour with one
use - Comfort: config templates and migrations, environment profiles
Documentation
The documentation site (Astro Starlight) lives in docs/; architecture decision records are in docs/adr/.
License
MIT (c) Kirill Lakhtachev