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 devOn 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/js/—tako.shSDK packageexamples/— runnable examplese2e/— Docker-based deploy e2e fixtureswebsite/— docs site + installer endpoints
MIT — see LICENSE.