# app.attrails.defs

> Published by [attrails.app](https://lexicon.garden/identity/did:plc:q7v2r4sxk4pecbwmaucvb2vn)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:q7v2r4sxk4pecbwmaucvb2vn/app.attrails.defs)
- [Documentation](https://lexicon.garden/lexicon/did:plc:q7v2r4sxk4pecbwmaucvb2vn/app.attrails.defs/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:q7v2r4sxk4pecbwmaucvb2vn/app.attrails.defs/examples)

## Definitions

### `app.attrails.defs#aspectRatio`

**Type**: `object`

Width:height ratio so clients can lay out before the image loads.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `height` | `integer` | Yes |  |
| `width` | `integer` | Yes |  |

### `app.attrails.defs#cycling`

**Type**: `token`

Cycling of any kind.

Cycling of any kind.

### `app.attrails.defs#easy`

**Type**: `token`

Easy for the stated activity.

Easy for the stated activity.

### `app.attrails.defs#extreme`

**Type**: `token`

Extreme for the stated activity.

Extreme for the stated activity.

### `app.attrails.defs#gravel`

**Type**: `token`

Mostly gravel / unpaved roads.

Mostly gravel / unpaved roads.

### `app.attrails.defs#hard`

**Type**: `token`

Hard for the stated activity.

Hard for the stated activity.

### `app.attrails.defs#hiking`

**Type**: `token`

Hiking or trekking.

Hiking or trekking.

### `app.attrails.defs#image`

**Type**: `object`

A photo attached to a route or review.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `alt` | `string` | Yes | Alt text for accessibility. May be empty. |
| `aspectRatio` | `ref` → `#aspectRatio` | No |  |
| `image` | `blob` | Yes |  |

### `app.attrails.defs#mixed`

**Type**: `token`

Mix of surfaces.

Mix of surfaces.

### `app.attrails.defs#moderate`

**Type**: `token`

Moderate for the stated activity.

Moderate for the stated activity.

### `app.attrails.defs#other`

**Type**: `token`

Any other activity.

Any other activity.

### `app.attrails.defs#paved`

**Type**: `token`

Entirely paved.

Entirely paved.

### `app.attrails.defs#running`

**Type**: `token`

Running or jogging.

Running or jogging.

### `app.attrails.defs#trail`

**Type**: `token`

Singletrack, footpath or trail.

Singletrack, footpath or trail.

### `app.attrails.defs#walking`

**Type**: `token`

Walking.

Walking.

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "aspectRatio": {
      "description": "Width:height ratio so clients can lay out before the image loads.",
      "properties": {
        "height": {
          "minimum": 1,
          "type": "integer"
        },
        "width": {
          "minimum": 1,
          "type": "integer"
        }
      },
      "required": [
        "width",
        "height"
      ],
      "type": "object"
    },
    "cycling": {
      "description": "Cycling of any kind.",
      "type": "token"
    },
    "easy": {
      "description": "Easy for the stated activity.",
      "type": "token"
    },
    "extreme": {
      "description": "Extreme for the stated activity.",
      "type": "token"
    },
    "gravel": {
      "description": "Mostly gravel / unpaved roads.",
      "type": "token"
    },
    "hard": {
      "description": "Hard for the stated activity.",
      "type": "token"
    },
    "hiking": {
      "description": "Hiking or trekking.",
      "type": "token"
    },
    "image": {
      "description": "A photo attached to a route or review.",
      "properties": {
        "alt": {
          "description": "Alt text for accessibility. May be empty.",
          "maxGraphemes": 2000,
          "maxLength": 20000,
          "type": "string"
        },
        "aspectRatio": {
          "ref": "#aspectRatio",
          "type": "ref"
        },
        "image": {
          "accept": [
            "image/*"
          ],
          "maxSize": 1000000,
          "type": "blob"
        }
      },
      "required": [
        "image",
        "alt"
      ],
      "type": "object"
    },
    "mixed": {
      "description": "Mix of surfaces.",
      "type": "token"
    },
    "moderate": {
      "description": "Moderate for the stated activity.",
      "type": "token"
    },
    "other": {
      "description": "Any other activity.",
      "type": "token"
    },
    "paved": {
      "description": "Entirely paved.",
      "type": "token"
    },
    "running": {
      "description": "Running or jogging.",
      "type": "token"
    },
    "trail": {
      "description": "Singletrack, footpath or trail.",
      "type": "token"
    },
    "walking": {
      "description": "Walking.",
      "type": "token"
    }
  },
  "id": "app.attrails.defs",
  "lexicon": 1
}
```
