Ship apps to your own servers without turning deployment into a part-time job.
Tako gives you the "upload files, refresh, done" feeling with modern guardrails — rolling deploys, load balancing, HTTPS, secrets, and logs out of the box.
curl -fsSL https://tako.sh/install.sh | shOr with Cargo:
cargo install takoVerify:
tako --versionFrom your app directory, install the SDK and start developing:
bun add tako.sh # or: npm install tako.sh
tako devFor JS projects, Tako runs your runtime lane's dev and build scripts by default. If you use Vite+, Turborepo, or another workspace tool, put it behind those scripts.
App-scoped commands default to ./tako.toml. Use -c/--config <CONFIG> to target another config file; Tako treats that path's parent directory as the project context, and omitting the .toml suffix is supported and recommended for brevity.
On first run, Tako sets up local HTTPS with a trusted certificate (asks for sudo once). Open the URL shown in the terminal — by default {app}.tako.
On each deployment host, install the runtime:
sudo sh -c "$(curl -fsSL https://tako.sh/install-server.sh)"Then add the server from your local machine:
tako servers add <host-or-ip>From your app directory:
tako init # prompts for app name + production route, writes tako.toml, updates .gitignore for .tako/secrets.json
tako deployThat's it. Your app is live.
Full docs at tako.sh/docs:
- Quickstart — install to live in minutes
- How Tako Works — architecture and mental model
- tako.toml Reference — every config option
- CLI Reference — all commands and flags
- Framework Guides — adapter examples
- Local Development — HTTPS, DNS, environment variables
- Deployment — deploy flow, rolling updates, rollbacks
- Troubleshooting — common issues and fixes
Development setup
- Rust toolchain (stable)
- Bun (for SDK/examples/website tooling)
just(optional, but useful for repo tasks)
bun install
git config core.hooksPath .githooks
cargo build
cargo test --workspace
just test # full matrix: Rust + SDK + Docker e2ejust fmt # format Rust + repo files
just lint # run lint checks
just ci # full local CI flow (format, lint, tests)tako/— CLI + local dev daemontako-server/— remote runtime/proxytako-core/— shared protocol typestako-socket/— shared Unix socket transportsdk/javascript/—tako.shSDK packageexamples/— runnable examplese2e/— Docker-based deploy e2e fixtureswebsite/— docs site + installer endpoints
MIT — see LICENSE.