PWA setup
PWA settings live at Admin → PWA. The panel is divided into five tabs: General, Icons, Push, Apple, and Status.
A Nexus forum is a fully functional PWA out of the box — the service worker and web app manifest are always served. The settings here configure what the installed app looks like and enable push notifications.
General tab
Section titled “General tab”App identity
Section titled “App identity”- App name — the full name shown on the splash screen and install prompt. Defaults to your forum name if left empty.
- Short name — a truncated label displayed under the home screen icon. Keep it under 12 characters.
- Start URL — the page opened when the app is launched from the home screen. Default:
/.
Appearance
Section titled “Appearance”- Theme color — controls the browser chrome color on Android. Leave empty to use the forum accent color.
- Background color — fills the splash screen behind the icon while the app loads. Leave empty to use
#030712.
Behavior
Section titled “Behavior”- Force portrait orientation — prevents the installed app from rotating to landscape mode.
Icons tab
Section titled “Icons tab”Upload a single high-resolution source image and Nexus generates all required sizes automatically. Accepted formats: PNG, JPEG, WebP. Recommended: 1024×1024 PNG. The image is cropped to a square at each size.
Nexus generates icons at seven sizes: 48×48, 96×96, 144×144, 180×180, 192×192, 384×384, and 512×512px.
The 192×192 and 512×512 icons are required for the app to be installable on Android and desktop browsers. The panel marks these as required and flags them in red until uploaded.
To replace all icons, upload a new source image. To remove all icons, use the Delete all icons button.
Push tab
Section titled “Push tab”VAPID keys
Section titled “VAPID keys”Push notifications require VAPID (Voluntary Application Server Identification) keys. Click Generate VAPID keys to create them. Keys are generated server-side and the private key is never exposed to the browser.
Once keys are generated the panel shows a green confirmation. Push notifications are active from that point.
Notification badge
Section titled “Notification badge”A small monochrome icon shown in Android system notifications alongside the notification text. Upload a PNG with a white logo on a transparent background — Android masks it to the system notification color. Automatically resized to 96×96px on upload.
Apple tab
Section titled “Apple tab”Safari on iPhone and iPad does not support the standard browser install prompt. This tab configures a sticky footer that guides iOS and iPadOS users through the manual Add to Home Screen flow.
iOS install prompt
Section titled “iOS install prompt”- Show iOS install prompt — toggle to enable. Only shown in Safari on iOS/iPadOS. Never shown when the app is already installed.
- Prompt text — the message shown in the footer. Use
{appName}to insert the app name. Default:Install {appName} — tap the Share button then "Add to Home Screen". - Delay before showing (ms) — how long after page load before the prompt slides up. Default:
10000(10 seconds). - Auto-detect share button position — points the arrow toward Safari’s share button based on device orientation.
- Always point up on iPad — Safari’s share button is always in the top bar on iPad, so the arrow always points up. Default: enabled.
Status bar
Section titled “Status bar”Controls the iOS status bar appearance when the app runs in standalone mode (after being added to the home screen).
| Option | Behaviour |
|---|---|
| Default | Standard iOS status bar |
| Black | Dark status bar text and icons |
| Black translucent | Dark status bar overlaid on the app’s content |
Default: Black translucent.
Status tab
Section titled “Status tab”The Status tab shows a live readiness checklist for the PWA:
| Check | What it verifies |
|---|---|
| HTTPS enabled | Forum is served over HTTPS (required for PWAs) |
| App name set | An app name is configured |
| Icons ready | Both required icons (192×192 and 512×512) are uploaded |
| Push notifications ready | VAPID keys have been generated |
| Service worker active | The service worker is registered and serving requests in the current browser |
All five checks must pass for the PWA to be fully installable with push notifications.