Define custom roles, assign granular permissions, and control who on your team can access what. Inspired by Gusto, Rippling, and Linear workspaces.
RoleCardList, StatsGrid
useQuery(api.teams.contractorTeamQueries.listCustomRoles)
CreateRoleForm, TemplateSelector, ColorPicker
useMutation(api.teams.contractorTeams.createCustomRole)
PermissionEditor, PermissionAccordion, ToggleSwitch
useMutation(api.teams.contractorTeams.updateCustomRole)
RoleDetailScreen, MemberList, PermissionSummary
useQuery(api.teams.contractorTeamQueries.getCustomRole)
AssignMembersSheet, MemberCheckboxList
useMutation(api.teams.contractorTeams.bulkAssignRole)
RoleAccessList, PermissionBar, RoleCard
useQuery(api.teams.contractorTeamQueries.listPermissions)
| Permission | Admin | Mgr | Tech | Sales | Disp |
|---|---|---|---|---|---|
| Jobs | |||||
| View Jobs | |||||
| Create Jobs | |||||
| Edit Jobs | |||||
| Assign Techs | |||||
| Complete Jobs | |||||
| Billing | |||||
| View Invoices | |||||
| Create Invoices | |||||
| Manage Payouts | |||||
| Refund | |||||
| Team | |||||
| View Members | |||||
| Invite Members | |||||
| Manage Roles | |||||
| Settings | |||||
| Company Profile | |||||
| Integrations | |||||
PermissionMatrix, CompareSelector, MatrixTable
useQuery(api.teams.contractorTeamQueries.getPermissionMatrix)
RoleAnalyticsDashboard, PermissionHeatmap, AuditTimeline
useQuery(api.teams.contractorTeamQueries.getRoleAnalytics)
contractorTeamQueries.listCustomRoles — all roles with member countscontractorTeamQueries.getCustomRole — role detail + assigned memberscontractorTeamQueries.listPermissions — permission catalog grouped by categorycontractorTeamQueries.getPermissionMatrix — cross-role audit gridcontractorTeamQueries.getRoleAnalytics — usage stats, heatmap datacontractorTeamQueries.listMembers — team list with current rolescontractorTeamQueries.getAccessLog — permission check audit trailcontractorTeams.createCustomRole — name, desc, color, template, permissionscontractorTeams.updateCustomRole — edit role metadata + permissionscontractorTeams.deleteCustomRole — remove role (reassign members first)contractorTeams.bulkAssignRole — assign multiple members to a rolecontractorTeams.updateCustomRole — edit role permissions + metadatacontractorTeams.duplicateRole — clone role with new namecontractorCustomRoles — name, description, isActivecontractorPermissions — permission catalog (category, key, label)contractorRolePermissions — role-permission junction tablecontractorTeamMembers — user, roleId, status, joinedAtcontractorPermissionLog — access audit trail (grant/deny events)contractorRoleHistory — change log for role modificationsRoleCardList — scrollable role grid with statsCreateRoleForm — name, desc, color, template inputsPermissionEditor — accordion categories + togglesPermissionAccordion — collapsible category with select-allRoleDetailScreen — banner, members, permission summaryAssignMembersSheet — search + multi-select checkbox listRoleAccessList — role list with permission coverage barsPermissionBar — segmented bar showing category coveragePermissionMatrix — audit matrix with compare modePermissionHeatmap — usage frequency visualizationAuditTimeline — role change history timelineRoleAnalyticsDashboard — charts, heatmap, logs combinedColorPicker — circle chip color selectorTemplateSelector — base role template chooser