> ## Documentation Index
> Fetch the complete documentation index at: https://namespace.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Start building with Namespace

> Everything you need to integrate Namespace into your applications. From first API call to production.

Build directly on Namespace for your own workloads, or build a platform that runs workloads for your customers, each in their own isolated tenant.

<Columns cols={2}>
  <Card title="Build a platform" icon="building-2" href="/docs/platform/tenants/quickstart">
    Give each customer a tenant, and act inside it on their behalf.
  </Card>

  <Card title="Run workloads" icon="play" href="/docs/platform/instances/quickstart">
    Create your first instance with your `nsc login`.
  </Card>
</Columns>

<CodeGroup>
  ```typescript TypeScript theme={null}
  const created = await computeClient.compute.createInstance({
    shape: {
      virtualCpu: 2,
      memoryMegabytes: 4096,
      machineArch: "amd64",
      os: "linux",
    },
    documentedPurpose: "quickstart",
    deadline: timestampFromDate(new Date(Date.now() + 60 * 60 * 1000)),
    containers: [
      {
        name: "demo",
        imageRef: "busybox",
        args: ["sh", "-c", "echo hello from Namespace"],
      },
    ],
  });
  ```

  ```go Go theme={null}
  resp, err := computeClient.Compute.CreateInstance(ctx, &computepb.CreateInstanceRequest{
  	Shape: &computepb.InstanceShape{
  		VirtualCpu:      2,
  		MemoryMegabytes: 4 * 1024,
  		MachineArch:     "amd64",
  		Os:              "linux",
  	},
  	DocumentedPurpose: "quickstart",
  	Deadline:          timestamppb.New(time.Now().Add(1 * time.Hour)),
  	Containers: []*computepb.ContainerRequest{{
  		Name:     "demo",
  		ImageRef: "busybox",
  		Args:     []string{"sh", "-c", "echo hello from Namespace"},
  	}},
  })
  ```

  ```bash curl theme={null}
  curl -sS -X POST "$COMPUTE_API/$SERVICE/CreateInstance" \
    -H "Authorization: Bearer $NSC_TOKEN" \
    -H "Content-Type: application/json" \
    -d @- <<JSON
  {
    "shape": {
      "virtualCpu": 2,
      "memoryMegabytes": 4096,
      "machineArch": "amd64",
      "os": "linux"
    },
    "documentedPurpose": "quickstart",
    "deadline": "$DEADLINE",
    "containers": [
      {
        "name": "demo",
        "imageRef": "busybox",
        "args": ["sh", "-c", "echo hello from Namespace"]
      }
    ]
  }
  JSON
  ```
</CodeGroup>

The same call works in both cases. Only the credential behind `computeClient` changes: your `nsc login` while you develop, or a tenant token when your platform acts for a customer.
See the [Instances quickstart](/docs/platform/instances/quickstart) for the full call, including authentication and waiting for the instance to become ready.

## Authenticate

Every call authenticates with a credential that decides where it acts.
While you develop, your `nsc login` acts in your own workspace.
A platform uses partner credentials to manage its tenants, and tenant tokens to act inside each one.

<Columns cols={3}>
  <Card title="Build on your own workspace" icon="laptop" href="/docs/platform/authentication/local-development">
    Start with your `nsc login`, no partner account needed.
  </Card>

  <Card title="Partner credentials" icon="key-round" href="/docs/platform/authentication/partner-credentials">
    Authenticate as your platform to manage tenants.
  </Card>

  <Card title="Tenant tokens" icon="ticket" href="/docs/platform/authentication/tenant-tokens">
    Act inside a customer's tenant.
  </Card>
</Columns>

## Building blocks

Pick the infrastructure that fits your stack.

<Columns cols={3}>
  <Card title="Compute" icon="cpu" href="/docs/platform/compute">
    Linux and macOS machines, shapes, resource limits, and observability.
  </Card>

  <Card title="Networking" icon="network" href="/docs/platform/networking">
    Ingress, access controls, egress policy, and performance.
  </Card>

  <Card title="Storage" icon="database" href="/docs/platform/storage">
    Cache volumes, the container registry, artifacts, and secrets.
  </Card>
</Columns>

The full API reference is at [API and SDKs](/docs/reference/api).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.