API Reference PhoenixKitStaff v#0.5.0

Copy Markdown View Source

Modules

Staff module for PhoenixKit.

Thin wrapper around PhoenixKit.Activity.log/1 so callers don't need to duplicate the Code.ensure_loaded?/1 guard and rescue clause everywhere. Safe to call from any LiveView — never crashes the caller.

CRUD for departments.

Atom → translated-string dispatcher for Staff context errors.

Gettext backend for staff-module-specific UI strings.

Tiny locale-aware date/time formatting helpers used by the staff UI.

Centralized path helpers for the Staff module.

Real-time updates for the staff module, backed by PhoenixKit.PubSub.Manager (the shared in-process PubSub server).

Top-level organizational unit containing teams.

A person on staff. Always linked to a PhoenixKit user (decision A for MVP); the user_uuid FK is required.

Join between Person and Skill — a person's assignment of a skill, carrying zero or more of the skill's own proficiency levels.

A skill that can be assigned to staff people.

A team inside a department.

Join between Team and Person — represents a person's membership on a team.

Skills: CRUD for the Skill taxonomy plus person↔skill assignment (with proficiency level).

Context for staff (people) and team memberships.

Team membership management — the person ↔ team join.

Read-model / reporting over the staff org: the upcoming-birthdays widget and the full department → team → people org tree.

CRUD for teams.

daisyUI boxed tab switcher for staff detail pages.

Create or edit a department.

Show a department with its teams.

Cross-LV helpers shared by the staff admin LiveViews.

Staff org overview — departments, teams, and people.

List staff, with soft-delete (trash / restore / permanent delete) + bulk actions.

Create or edit a staff person.

Show a staff person's full profile and team memberships.

Create or edit a skill, including its per-skill proficiency levels.

Show a skill and manage which people have it, at which of the skill's own proficiency levels.

Create or edit a team.

Show a team and manage its memberships.

List teams across all departments.