← All blocks

Profile settings

settings · profile · settings-profile

npx shadcn@latest add @plus-ui/settings-profile

Default content

{
  "eyebrow": "pellora",
  "title": "Settings",
  "description": "Your account, alerts and access across every Pellora project.",
  "nav": [
    {
      "label": "Profile",
      "href": "#profile",
      "page": "profile"
    },
    {
      "label": "Notifications",
      "href": "#notifications",
      "page": "notifications"
    },
    {
      "label": "Security",
      "href": "#security",
      "page": "security"
    },
    {
      "label": "Members",
      "href": "#members"
    },
    {
      "label": "Billing",
      "href": "#billing"
    },
    {
      "label": "Integrations",
      "href": "#integrations"
    }
  ],
  "save": {
    "submit": "Save changes",
    "cancel": "Cancel",
    "note": "Applies to your account in every workspace."
  },
  "profile": {
    "avatar": {
      "image": {
        "src": "https://images.unsplash.com/photo-1494790108377-be9c29b29330?auto=format&fit=crop&crop=faces&w=240&h=240&q=80",
        "alt": "Ines Varga"
      },
      "title": "Photo",
      "hint": "Square JPG or PNG, at least 256 px. Shown on deploys and comments.",
      "upload": "Upload",
      "remove": "Remove"
    },
    "sections": [
      {
        "title": "Personal",
        "description": "How you appear on deploy logs, preview comments and audit events.",
        "fields": [
          {
            "id": "name",
            "label": "Full name",
            "type": "text",
            "value": "Ines Varga",
            "wide": false
          },
          {
            "id": "handle",
            "label": "Username",
            "type": "text",
            "value": "ines",
            "prefix": "rivetlane.app/",
            "wide": false
          },
          {
            "id": "email",
            "label": "Email",
            "type": "email",
            "value": "[email protected]",
            "hint": "Used for sign-in and deploy alerts. Verified.",
            "wide": true
          },
          {
            "id": "bio",
            "label": "Bio",
            "type": "textarea",
            "value": "Platform lead. I own checkout-api and the edge config. Ping me before purging caches.",
            "hint": "Shown on your profile card. 160 characters.",
            "wide": true
          }
        ]
      },
      {
        "title": "Preferences",
        "description": "Defaults for timestamps, the deploy view and new projects.",
        "fields": [
          {
            "id": "timezone",
            "label": "Time zone",
            "type": "select",
            "value": "Europe/Lisbon (UTC+1)",
            "options": [
              "Europe/Lisbon (UTC+1)",
              "Europe/Berlin (UTC+2)",
              "America/New_York (UTC−4)",
              "Asia/Tokyo (UTC+9)"
            ],
            "wide": false
          },
          {
            "id": "region",
            "label": "Default region",
            "type": "select",
            "value": "eu-west-1",
            "options": [
              "eu-west-1",
              "eu-central-1",
              "us-east-1",
              "ap-northeast-1"
            ],
            "wide": false
          },
          {
            "id": "github",
            "label": "GitHub",
            "type": "url",
            "value": "github.com/ivarga",
            "hint": "Links your commits to your Rivetlane profile.",
            "wide": true
          }
        ]
      }
    ]
  },
  "notifications": {
    "channels": [
      {
        "label": "Email",
        "icon": "mail"
      },
      {
        "label": "Chat",
        "icon": "message"
      },
      {
        "label": "Webhook",
        "icon": "webhook"
      }
    ],
    "groups": [
      {
        "title": "Deployments",
        "description": "Builds and promotions in projects you own or watch.",
        "events": [
          {
            "label": "Deploy failed",
            "description": "A build or health check fails on any environment.",
            "enabled": [
              true,
              true,
              true
            ]
          },
          {
            "label": "Deploy ready",
            "description": "A production deploy finishes and takes traffic.",
            "enabled": [
              false,
              true,
              true
            ]
          },
          {
            "label": "Preview ready",
            "description": "A preview URL is live for a pull request you opened.",
            "enabled": [
              true,
              false,
              false
            ]
          },
          {
            "label": "Rollback triggered",
            "description": "Traffic shifts back to a previous deploy, manually or by policy.",
            "enabled": [
              true,
              true,
              true
            ]
          }
        ]
      },
      {
        "title": "Reliability",
        "description": "Incidents and thresholds on services you are on call for.",
        "events": [
          {
            "label": "Incident opened",
            "description": "A SEV-1 to SEV-3 incident is declared on your services.",
            "enabled": [
              true,
              true,
              true
            ]
          },
          {
            "label": "p95 latency over budget",
            "description": "p95 stays above the service budget for 5 minutes.",
            "enabled": [
              false,
              true,
              false
            ]
          },
          {
            "label": "Certificate expiring",
            "description": "A custom domain certificate expires within 14 days.",
            "enabled": [
              true,
              false,
              false
            ]
          }
        ]
      },
      {
        "title": "Account",
        "description": "Sign-ins, tokens and billing for this workspace.",
        "events": [
          {
            "label": "New sign-in",
            "description": "Someone signs in to your account from a new device.",
            "enabled": [
              true,
              false,
              false
            ]
          },
          {
            "label": "Usage at 80% of plan",
            "description": "Build minutes or bandwidth pass 80% of the plan limit.",
            "enabled": [
              true,
              true,
              false
            ]
          }
        ]
      }
    ],
    "digest": {
      "title": "Weekly digest",
      "description": "A summary of deploys, incidents and usage, sent Monday morning.",
      "label": "Frequency",
      "options": [
        "Off",
        "Daily",
        "Weekly",
        "Monthly"
      ],
      "value": "Weekly"
    },
    "quietHours": {
      "title": "Quiet hours",
      "description": "Hold non-critical alerts from 22:00 to 07:00 in your time zone. Failures still go out.",
      "enabled": true
    }
  },
  "security": {
    "password": {
      "title": "Password",
      "description": "Used with your email when single sign-on is not available.",
      "lastChanged": "Last changed 94 days ago",
      "action": "Change password"
    },
    "twoFactor": {
      "title": "Two-factor authentication",
      "description": "Required for everyone with production deploy access in this workspace.",
      "enabled": true,
      "statusLabel": "Enabled",
      "methods": [
        {
          "label": "Authenticator app",
          "detail": "Added Mar 3, 2026 · used 2 days ago",
          "icon": "shield",
          "action": "Reset"
        },
        {
          "label": "Security key",
          "detail": "YubiKey 5C · added Jun 18, 2026",
          "icon": "key",
          "action": "Remove"
        }
      ],
      "recovery": "8 of 10 recovery codes left"
    },
    "sessions": {
      "title": "Sessions",
      "description": "Devices and CLIs signed in to your account in the last 30 days.",
      "currentLabel": "This device",
      "revoke": "Revoke",
      "revokeAll": "Sign out other sessions",
      "items": [
        {
          "device": "MacBook Pro · Chrome 131",
          "kind": "desktop",
          "location": "Lisbon, PT",
          "ip": "185.32.•••.14",
          "lastActive": "Active now",
          "current": true
        },
        {
          "device": "iPhone 16 · Rivetlane app",
          "kind": "mobile",
          "location": "Lisbon, PT",
          "ip": "89.153.•••.201",
          "lastActive": "3 h ago",
          "current": false
        },
        {
          "device": "rivet CLI 2.14 · linux/amd64",
          "kind": "cli",
          "location": "Frankfurt, DE",
          "ip": "3.120.•••.77",
          "lastActive": "Yesterday",
          "current": false
        }
      ]
    },
    "tokens": {
      "title": "API tokens",
      "description": "Personal tokens for the CLI and CI. Scoped to your access; shown once at creation.",
      "create": "Create token",
      "revoke": "Revoke",
      "columns": {
        "name": "Name",
        "token": "Token",
        "scopes": "Scopes",
        "lastUsed": "Last used",
        "expires": "Expires"
      },
      "items": [
        {
          "name": "ci-github-actions",
          "masked": "rvl_••••••••3f9a",
          "scopes": [
            "deploy",
            "read"
          ],
          "lastUsed": "12 min ago",
          "expires": "Jan 12, 2027"
        },
        {
          "name": "local-cli",
          "masked": "rvl_••••••••b71c",
          "scopes": [
            "deploy",
            "logs",
            "env"
          ],
          "lastUsed": "Yesterday",
          "expires": "Never"
        },
        {
          "name": "grafana-export",
          "masked": "rvl_••••••••0de4",
          "scopes": [
            "read"
          ],
          "lastUsed": "41 days ago",
          "expires": "Nov 2, 2026"
        }
      ]
    },
    "danger": {
      "title": "Danger zone",
      "description": "These actions cannot be undone.",
      "items": [
        {
          "title": "Leave Pellora",
          "description": "You lose access to its projects, deploys and logs. An owner can invite you back.",
          "action": "Leave workspace"
        },
        {
          "title": "Delete account",
          "description": "Removes your profile, tokens and sessions everywhere. Deploys you made stay in the audit log.",
          "action": "Delete account"
        }
      ]
    }
  }
}