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

# Overview

> Configure CPU, memory, storage, and auto-scaling policies.

Specifications define the infrastructure requirements for your services. You can set these globally or override them per environment (e.g., smaller instances for `staging`, larger for `production`).

<div style={{ display: "flex", justifyContent: "center" }}>
  <img src="https://mintcdn.com/poddle-54594c3d/q0Rk3K5lGk3vHIWm/image-v2/yaml/resource-specification.png?fit=max&auto=format&n=q0Rk3K5lGk3vHIWm&q=85&s=955043dfbd4d30c88db8e1518feb3821" width="500" data-path="image-v2/yaml/resource-specification.png" />
</div>

## Auto-scaling

For `WEB_SERVICE` types, you can define fluid scaling based on traffic or resource pressure.

```yaml revolte.yaml theme={"dark"}
revolte:
  version: "1.0"
  project: Demo-Project
  appName: "demo-app"
  env:
    production:
      branch: main
      services:
        rid_1:
          type: WEB_SERVICE
          specifications:
            autoScaling:
              replica: { min: 1, max: 5 }
              utilization:
                cpu: { target: 70 }
                memory: { target: 70 }
```

## Related

* [Service Definitions](/yaml/environment-settings/services)
* [Variables & Secrets](/yaml/environment-settings/resource-specifications/variables)

## Next steps

* [Configure Web Services](/yaml/environment-settings/resource-specifications/web-service)
* [Set up Databases](/yaml/environment-settings/resource-specifications/database)
* [Learn about Syncing Changes](/yaml/syncing)
