Volter World

Volter World documentation

Develop your app against services whose data and behavior you can control. Volter runs a World: the twins of the vendors you select, together with their state and environment. A twin answers a vendor's API locally, so your app can use its real SDK to create and read data. You can return to known data, script a failure or branch a World to reproduce a problem.

Start locally without a platform account, then pick a guide for the task you want to complete. Use your app's real SDKs. Select the vendors to substitute, give them the data and behavior your workflow needs, and run the app inside the World.

Start here

Your situationStart withWhat you will have
I want to understand it by trying itYour first local WorldAn SDK write, a read-back assertion and a repeatable starting state
I already have an applicationUse your existing appSelected twins and your usual app command running inside a World
I work with a coding agentUse your coding agentThe same CLI workflow, with the agent doing the setup
A teammate invited meJoin a team's WorldThe right platform, organization and shared workflow
I have used a World beforeResume your WorldYour saved branch and data, without starting over

Local use needs no Volter platform account or real vendor key. A platform adds team access and shared Worlds; publishing a twin is a separate contributor task. Check a release's supported operations before relying on it. Node SDKs use injected routing; other clients may need their supported proxy, CA or endpoint setup. What a twin is explains the behavior and limits.

After your first success

Run your app, inspect its writes, then control its starting data. Add responses and failures for the cases you need to exercise. When the workflow is repeatable, use it for browser work, CI or team collaboration. If a call fails, recover a failed call starts with the evidence.

Learn

  • Getting started — create a customer, read it back, assert the result, reset and repeat with a real SDK and a local twin.
  • Inspect a World — read its log and state, or open the dashboard and vendor screens.

Choose twins

  • Choose a twin — compare implementations for the operations your app needs; understand supported surface, exercised coverage and publisher identity.
  • Use a catalog twin — install an exact release and run the real SDK with synthetic page data, including an absent-page failure.
  • Update a twin — compare a candidate, try it separately, and change dependencies and World pins deliberately.

Develop and test

Collaborate

Examples

Administer a platform

  • Host worlds for a team — many worlds under one URL, each with its own token, provisioned through the HTTP API, and a console that shows them all.
  • Self-host the platform — the host and the platform on your own machines: people sign in with your identity provider, make orgs and open Worlds as themselves.
  • Use the hosted product — sign in, get a token, push from your machine to a world Volter runs for your org.

Look up

  • CLI — every volter verb and flag, and the operator's volter-world.
  • Config — .volter/world.json, field by field.
  • SDK — World and TwinLog from @volter/world.
  • HTTP API — what a twin and a remote serve beside the vendor's API.
  • Platform API — the hosted product's own endpoints: orgs, worlds, members, billing, tokens, activity, support; generated from one table.
  • Refusals — every refusal a world gives, the side that refused, and the one change that fixes it.
  • Coverage — what supported, exercised and unmeasured coverage mean for your app.
  • Glossary — every word a user meets, and no other.

Understand

  • What a twin is — how faithful, what it never does, why it refused that route.
  • The model — Neon for every SaaS: the log, checkpoints, branches as positions, the root, push against deploy, checks.
  • Worlds — what up actually starts, the env your app sees, why worlds are cheap.
  • Data and keys — where your data lives, credential and token authority, and what uses the network.

Contribute

View Markdown source

On this page