Athas Boilerplate

@athas/auth-core capabilities

external-ready

Roles, capabilities, and AuthZ helpers shared across apps.

Purpose

AuthZ helpers live in @athas/auth-core and are shared across backend and frontend authorization paths.

Exports

  • Capabilities constant map
  • CapabilityName type
  • hasCapability(...)
  • hasAnyCapability(...)
  • hasAllCapabilities(...)

Usage example

import { Capabilities, hasAnyCapability } from '@athas/auth-core'

const canManage = hasAnyCapability(userCaps, Capabilities.CanManageRoles, Capabilities.CanEditUsers)

Why this matters

  • single source of truth for capability strings
  • prevents typo-driven auth bugs
  • keeps UI gating and backend policy checks aligned

On this page