Skip to main content
Version: 0.0.2

Admin Panel

The admin panel is accessible to users with admin privileges. It provides a system status overview and full user management capabilities.

Accessing the Admin Panel

The admin panel is available at /admin in the web interface. It is only visible to users with is_admin: true. Regular users are automatically redirected away if they try to access it directly.


System Status

At the top of the admin panel, a System widget shows the current state of the installation.

Frontend — displays the currently running frontend version.

Backend — displays the backend version, Node.js version, and uptime. If the backend is unreachable, it shows as offline.

Docker Hub — fetches the latest published versions of cheinisch/dockwallet-backend and cheinisch/dockwallet-frontend and compares them against the running versions.

If an update is available, a banner appears with a direct link to the Docker Hub tags page. Click Refresh to re-check all three values manually.


User Management

Below the system status, a table lists all registered users. You can search by username, email, first name, or last name using the search field.

Each row shows:

  • Username, email, and full name (if set)
  • Status — whether the account is active and whether the user has admin rights
  • Auth — whether MFA (TOTP) is enabled and how many passkeys are registered
  • Passes — number of boarding passes stored for that user
  • Created — account creation date

Creating a User

Click Create User to open the creation form. The following fields are available:

FieldRequiredDescription
UsernameYesUnique login name
EmailYesUnique email address
PasswordYesMinimum 8 characters
First nameNoOptional display name
Last nameNoOptional display name
ActiveIf enabled, the user can log in immediately without email confirmation
AdminIf enabled, the user has access to the admin panel

Editing a User

Click Edit next to a user to update their username, email, name, active status, and admin role. Email and username must remain unique across all users.


Resetting a Password

Click Password next to a user to set a new password for them directly. The new password must be at least 8 characters long. No confirmation email is sent.


Resetting MFA

If a user has MFA enabled, a MFA reset button appears in their row. Clicking it immediately disables MFA and deletes the stored TOTP secret for that user. The user will be able to log in again with just their password.


Deleting Passkeys

If a user has one or more passkeys registered, a Passkeys button appears. Clicking it deletes all passkeys for that user. This is useful if a user has lost access to their device.


Deleting a User

Click Delete to permanently remove a user. A confirmation dialog shows how many boarding passes will also be deleted. This action cannot be undone — all passes are deleted along with the account via cascade.

Admins cannot delete their own account from the admin panel.