Skip to content

[REFACTOR] Move Service Management from Modals to Dedicated Pages #39

@zeedivx

Description

@zeedivx

Which part of the codebase needs refactoring?
Currently, service management (editing configuration, viewing secrets) is handled via modals in
frontend/src/app/dashboard/admin/services/page.tsx and related components (EditServiceModal,
ServiceSecretModal).

Why is this refactor needed?
The Service object is becoming complex, containing OIDC configuration (Redirect URIs, Scopes),
security credentials, and RBAC (Roles & Permissions). Managing all this within modals leads to a
cramped UI, poor developer experience (DX), and scalability issues. Modals are becoming
overcrowded, making it difficult to implement advanced features like role management effectively.

Proposed changes

  1. Create Dedicated Detail Page: Introduce a dynamic route
    frontend/src/app/dashboard/admin/services/[id]/page.tsx to handle service details.
  2. Modular Layout: Design the page with tabs or sections for:
    • General: Basic info (Name, Description, Domain).
    • OIDC: Technical config (Redirect URIs, Allowed Scopes).
    • Security: Client ID/Secret management (Rotation).
    • Roles: Role-Based Access Control management specific to the service.
  3. Update List View: The "Edit" action in the services list should navigate to this new page
    instead of opening a modal.
  4. Simplify Creation: Keep the "Create Service" modal simple (minimal fields) and redirect to
    the detail page upon success.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions