jobs-and-notifications

Use when dispatching asynchronous work OR delivering user-facing notifications. Typical phrasings: "add a job to do X in the background", "send an email to user after Y", "queue a CSV export job", "notify user when their order ships", "welcome email on signup", "multi-channel notification (email + in-app + push)", "retry a failing webhook delivery", "in-app notification inbox for users". Forge provides both systems — Jobs (bare async work with retry/backoff/rate-limit) and Notifications (multi-channel delivery with a recipient + `Notifiable` trait). Notifications dispatch via the Job queue under the hood but carry recipient identity and per-channel rendering. Do NOT use for: recurring scheduled tasks (→ `src/schedules/`, not yet a skill); cross-cutting side-effects on model save (→ `new-event-listener` for the trigger, which dispatches the job/notification); WebSocket channels for real-time data (→ CLAUDE.md "WebSocket" + `admin-badge` for counts); badge count updates (→ `admin-badge`).

Safety Notice

This listing is imported from SkillsMP metadata and should be treated as untrusted until upstream source review is completed.

Copy this and send it to your AI assistant to learn

Install skill "jobs-and-notifications" with this command: npx skills add weiloon1234/skillsmp-weiloon1234-weiloon1234-jobs-and-notifications

No markdown body

This source entry does not include full markdown content beyond metadata.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

admin-badge

Use when adding a new admin-portal sidebar badge — a pending-item count indicator such as "pending topups", "pending KYC", "unreviewed withdrawals", or any "show count on admin menu" request. Covers the full cross-layer flow: backend AdminBadge trait file + BadgeServiceProvider registration + frontend MenuItem wiring. Do NOT use for Forge user notifications (outbound messages delivered to users), dashboard metrics / charts, or generic global-state counters unrelated to admin work queues.

Repository SourceNeeds Review
General

admin-datatable

Use when adding a new admin-portal listing / CRUD page backed by a datatable. Typical phrasings: "add a users page", "add admin for top-ups with filters and search", "create a CRUD page for withdrawals", "list page with export and create modal for X". Covers the full cross-layer flow — backend Datatable trait + registration + CRUD routes + request/response DTOs + service functions + frontend list page + form modal + delete modal + router + menu + i18n. Do NOT use for: single-record detail pages (separate skill), wizard-style multi-step forms, user-portal listing pages (admin-portal only for v1), or public-facing datatables.

Repository SourceNeeds Review
Security

admin-page

Use when adding an admin-portal page that is NOT a CRUD list backed by a datatable. Typical phrasings: "add an admin dashboard", "admin detail page for X", "settings page", "admin report / analytics page", "admin workflow step", "admin-only viewer for logs / audit". Covers the full flow — optional backend route + DTO + service (for pages that fetch data), frontend page component, router entry, sidebar menu entry, i18n, permission gating. Routes CRUD/list requests to `admin-datatable` and auth/login requests to `new-portal`. Do NOT use for: list/CRUD pages (→ `admin-datatable`); login / auth UI (→ `new-portal`, which scaffolds these); user-portal pages (adapt by analogy — no user-page skill yet); dashboards on the frontend without any backend data (regular component work, no skill needed).

Repository SourceNeeds Review
General

frontend-form

Use when building a form anywhere in the frontend — inside a modal, on a full page, as a wizard step, or a settings panel. Typical phrasings: "add a form for X", "settings form", "profile form", "multi-step wizard", "form modal for create/edit Y", "confirm action dialog". Covers `useForm` wiring + `@shared/components` field composition + `modal.open` for form modals + 422 error auto-wiring + submit / cancel / delete button patterns. Do NOT use for: the full admin CRUD-page flow (that's `admin-datatable`, which invokes this for its form modal); picking which shared component to use (`shared-components` — consult that for field-type → primitive mapping); building a `<DataTable>` column filter (not a form, that's the datatable's built-in filter system); auth login/refresh forms (those ship as part of `new-portal`).

Repository SourceNeeds Review
jobs-and-notifications | V50.AI