Smoke Cloud is the simulation lifecycle platform for fire engineers and fire researchers. Version, share, and analyse every simulation in one place — scale to thousands of cores when an emergency demands it, keep costs under control, and archive runs so they stay searchable for years.
Full revision control over every simulation, with durable storage and clear tracking of inputs, parameters, and runs. Nothing gets lost, nothing gets accidentally overwritten, and every version stays accessible.
Share simulation inputs and outputs with collaborators or clients in a click. No more zipping multi-gigabyte directories, uploading them somewhere, and emailing links — files stay where they are, access stays under your control.
When an emergency hits, scale from one run to hundreds in minutes. Smoke Cloud bursts across thousands of cores so a whole team can model every scenario at once — no queue, no waiting room.
Set hard caps per project so simulation costs don't get out of control. Every CPU-hour and byte is logged precisely — ready for onward billing to clients or rolling into next year's forecast.
Go beyond raw FDS output with built-in slice viewers, comparison plots, and statistical summaries. Diff two runs side-by-side, replay any historical simulation, and export review-ready reports.
Store and index simulations indefinitely, searchable years after the fact — making data retention requirements trivial to satisfy. Lifecycle policies move cold runs to cheaper storage automatically, without losing a single byte.
Simply run a simulation via a terminal or script.
# queue 24 concurrent runs across a parameter sweep
$ smoke-cloud run ./scenarios/fire.fds --project New-Street --n-mpi 24 --fds-version 6.10.1
→ 24 sims queued · eta ~12 min
→ follow at smokecloud.io/sweeps/s7a3
$ smoke-cloud download --chid fire
✓ 24/24 complete · saved to ./out
Drop the SDK into a Node or browser project and call simulations like any other typed library. .
// install: npm i @smokecloud/sdk
import {SmokeCloud} from "@smokecloud/sdk";
const sc = new SmokeCloud({apiKey: process.env.SC_KEY });
const sim = await sc.simulations.create({
template: "fds-couch-v3",
node: "n4.96",
inputs: ["terrain.tif", "fuels.shp"],
});
await sim.waitForCompletion();
const results = await sim.results();
A clean REST surface for everything the CLI and SDK do — hit the endpoints directly with curl, or use the OpenAPI spec to generate a client in any language.
# launch a simulation from any language that speaks HTTP
POST /v1/simulations
Authorization: Bearer sk_live_…
{
"template": "fds-couch-v3",
"node": "n4.96",
"inputs": ["terrain.tif","fuels.shp"]
}
← 201 created · id sim_8f3a91