Skip to content

[MAIN-IMP] Add admin config UI and batch config update API - #106

Open
moda20 wants to merge 4 commits into
masterfrom
Feature/adding-easy-ui-to-handle-config-update
Open

moda20 wants to merge 4 commits into
masterfrom
Feature/adding-easy-ui-to-handle-config-update

Conversation

@moda20

@moda20 moda20 commented Sep 8, 2026

Copy link
Copy Markdown
Owner

Improvements:

  • [Improvement] New admin portal at /admin: React + Vite + shadcn/ui subproject (src/UI) to view and update runtime config without going through the config-audit user flow.
  • [Improvement] New Admin config API: Similar to the client side config API, but circumvents the authentication and the need to add to the config audit DB table!
  • [Improvement] Access control: IP allowlist from new admin.allowedIPs setting / ADMIN_ALLOW_IPS env (default 127.0.0.1, localhost-only), plus a short-lived HMAC-signed x-ui-token (15 min TTL, timing-safe verification) injected into the served index.html for data/mutation routes (encryptionUtils.ts).

Notes

  • [Note] Build the UI before use: bun run build_ui (Vite build into src/UI/dist); the backend serves the built assets with immutable caching + etag.
  • [impact] Admin portal is localhost-only by default; widen access via the ADMIN_ALLOW_IPS env var.
  • [Note] Notification service keys (notifications.*) are also rejected from changes via this new API. The goal of the new UI is to handle cases where DB saved config is outdated and the server is not able to boot correctly, among other quick updates for headless server setups. For the boot issue case, see env vars to be sure to allow this to happen.
  • [Note] The Docker container, now builds the new local UI as well

How Has This Been Tested?

Related Issues

Screenshots (if applicable)

Additional Context

Summary by CodeRabbit

  • New Features
    • Added an admin configuration console for viewing settings organized by category.
    • Edit, encrypt, decrypt, delete, undo, discard, and review configuration changes before saving.
    • Added session-expiration handling, retry options, and confirmation dialogs for sensitive actions.
    • Added connection health status with service details and automatic monitoring.
    • Added responsive navigation, collapsible sidebar, light/dark theme toggle, and toast notifications.
    • Added protected admin access with configurable IP allowlisting and secure session tokens.

Add the full UI subProject inside the src/UI dir
Adding config updates to the UI subproject using the admin controller api endpoints
@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 4d55f576-7f5e-437f-8f65-c97366ba0a4b


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Update Docker file and compose to include building the local UI
Adding missing docs to the config UI elements
Adding config items and env vars for admin UI on boot error and allowed to access IPs
add tmp and agent files to dockerignore
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant