admin-page

Create a non-datatable admin page scaffold with route, component, menu, and i18n wiring.

Updated Apr 14, 2026
One-click install
npx skills add https://github.com/weiloon1234/Forge-Starter --skill admin-page-weiloon1234
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: admin-page
Source: https://github.com/weiloon1234/Forge-Starter/tree/main/.claude/skills/admin-page
Command: npx skills add https://github.com/weiloon1234/Forge-Starter --skill admin-page-weiloon1234

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill provides a battle-tested blueprint to scaffold admin pages that are NOT backed by a datatable, ensuring a consistent route, page component, menu entry, i18n, and optional backend wiring across admin portals.

Core Features & Use Cases

  • Route entry in frontend/admin/src/router.tsx with path and component.
  • A page component in frontend/admin/src/pages/<Name>Page.tsx composed from @shared/components primitives.
  • A menu entry in frontend/admin/src/config/side-menu.ts with permission gating.
  • i18n keys in locales/<lang>/messages.json under a portal-specific namespace (admin.<name>.*).
  • Optional backend: REST route in src/portals/admin/<name>_routes.rs, request/response DTOs, and a portal-less service function under src/domain/services/.
  • The page is thin; route handlers call service functions; avoid duplicating business logic in the page.

Quick Start

Create a new admin-page scaffold and wire it into the router, menu, i18n, and optional backend following CLAUDE.md patterns.

Frequently Asked Questions about admin-page

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scaffold an admin dashboard page with routing and menu permissions?

Scaffold a non-datatable admin dashboard by generating a page component, registering the route in router.tsx, adding a menu entry with permission gating, and defining i18n keys to align frontend and backend wiring.

What is the correct file structure for adding a settings page to an admin portal?

A settings page requires a component in pages/<Name>Page.tsx, a route entry in router.tsx, a menu item in config/side-menu.ts, and i18n keys under an admin.<name>.* namespace in messages.json.

How do I wire backend REST routes and DTOs for a new admin detail view?

Wire backend REST routes by creating a handler in src/portals/admin/<name>_routes.rs, defining request/response DTOs, and calling a portal-less service function under src/domain/services/ to keep the page thin.

Can I use this scaffold for admin pages backed by a datatable?

This scaffold targets non-datatable admin pages like dashboards, detail views, or settings. It specifies route registration, page composition, menu entry, i18n keys, and optional backend scaffolding for pages that read or gate data without datatables.

Where should i18n keys be defined for a new admin portal page?

Define i18n keys in locales/<lang>/messages.json under a portal-specific namespace structured as admin.<name>.* to ensure consistent internationalization across the admin portal.

Why should business logic be avoided in admin page components?

Admin page components should remain thin to prevent duplicating business logic. Route handlers must call service functions under src/domain/services/ to keep logic centralized and maintain alignment with CLAUDE.md conventions.