Skip to Content
DocsDeploymentUsers & Roles

Users & Roles

Ycode supports four roles with different levels of access — Owner, Admin, Designer, and Editor. The same role catalog applies on Cloud and self-hosted; only the management UI and scoping differ.

This page covers user management on self-hosted Ycode, where users are system-wide and managed from Settings → Users in the builder.

On Ycode Cloud, the same four roles apply, but team membership is scoped per project (personal workspaces) or workspace-wide (agency workspaces) instead of being system-wide.

Roles

RoleBest forWhat they can do
OwnerPerson responsible for the instanceEverything — full control over users, roles, settings, integrations, backups, billing, and every project surface
AdminTrusted operatorsEverything an owner can do except removing the owner. Manages users, settings, integrations, and content
DesignerDesigners and developers building the siteFull builder access — pages, layers, design, CMS schema, components, interactions, publishing
EditorContent updaters and clientsEdit page content (text, images, CMS items) without changing structure, design, or settings

The first user created on a new instance is automatically assigned the Owner role by the bootstrap migration. Subsequent invited users default to Designer unless you pick a different role when sending the invitation.

Editor Mode

The Editor role is designed for content updates — clients, marketers, or anyone who needs to keep copy and CMS content fresh without touching layout, design, or settings.

What an editor sees:

  • A simplified header with Content editor and Pages as the only navigation
  • The right design sidebar is hidden — design and structural panels are not exposed
  • The layers and pages trees are read-only — layers cannot be added, deleted, reordered, or renamed
  • Forms and settings are not reachable from the navigation

What an editor can still do:

  • Double-click any text on the canvas to edit it inline
  • Replace image content (swap the asset bound to a layer)
  • Open any CMS collection and edit, add, or remove items — collection schema (fields, sorting, settings) stays read-only
  • Open and edit translations for the locales already configured
  • Publish

Structural keyboard shortcuts (copy / paste / delete layer, undo of structural ops, etc.) are blocked, and the shortcuts dialog only lists what’s actually available in the role. Settings, integrations, backups, invitations, and locale management redirect back to the canvas if accessed directly.

Inviting Users

From Settings → Users:

  1. Click Invite user
  2. Enter the email address
  3. Pick a role (defaults to Designer)
  4. Send the invitation

The invitee receives an email with a sign-up link. Once they complete sign-up, the assigned role is active.

Make sure Supabase’s Confirm email setting is disabled (see Configuration). Ycode handles user verification itself, and the invite flow relies on this being off.

Changing a User’s Role

Owners and admins can change a user’s role at any time:

  1. Open Settings → Users
  2. Pick the user
  3. Choose a new role from the role dropdown

The change takes effect on the user’s next request. Their session refreshes from the server so the UI re-renders with the new permissions automatically — the user does not need to sign out and back in.

Removing a User

From Settings → Users, open the user’s row and click Remove. The account is deleted and any active sessions are revoked.

The Owner account cannot be removed by an admin — only the owner can step down by transferring ownership to another account first (set another user to Owner, then remove the original owner from the new owner account).

Permission Reference

CapabilityOwnerAdminDesignerEditor
Manage users and roles
Project settings, integrations, backups, locales
Add / delete / reorder pages
Add / delete / reorder layers
Edit design, components, styles, interactions
Edit CMS schema (collections, fields)
Edit CMS items
Edit page text and images inline
Edit translations
Publish
Last updated on