Persistent, autoscaled machines
Pay for the CPU, RAM, and disk your machines use at any point in time.
Adolph Menzel, The Iron Rolling Mill, 1875. Public domain.
SDK
Idiomatic bindings for your language.
TypeScript Python Elixir Rust Wasm
Boot machines, run commands, and apply config from your own code. The TypeScript package also runs in the browser, so a web app can drive machines directly. Start with the docs.
❯ bun add @indexable/sdk
# node 22+ and bun
# wasm build included: runs in the browser too
Pricing
An idle machine costs about 14 cents a day.
Metered each second on what the machine uses, not what it could. The pricing page has the full rate card.
14¢/day $0.00000162/s · metered each second on use
Underneath
Real bare metal.
Each machine is a VM on dedicated AMD EPYC hosts, with no cloud layer underneath. 25 Gbps public and 50 Gbps internal networking, IPv6 + IPv4.
ix-server-1
on main bare metal · 41d up
❯ lscpu
Model name: AMD EPYC (Zen 5)
CPU(s): 64
Thread(s) per core: 2
L3 cache: 256 MiB
Declarative
The whole machine, declared.
The machine is code.
ix apply steps it from one declared state
to the next, in place, data intact.
1// JavaScript syntax, Nix semantics.
2// `ix apply` converges the machine to this file.
3export default ({ index }) => ({
4 packages: [index.rustc, index.cargo, index.rg],
5 services: {
6 postgres: { enable: true },
7 redis: { enable: true },
8 },
9 modules: [import("./modules/web.ix")],
10});
1# generated from default.ix by `ix apply`; do not edit.
2{
3 inputs.index.url = "github:indexable-inc/index";
4 outputs = { index, ... }: {
5 nixosConfigurations.dev =
6 index.lib.fromIx ./default.ix;
7 };
8}