wails/v3/internal/templates
Lea Anthony 9a363d7be5
feat(v3): add server mode for headless HTTP deployment (#4903)
* feat(v3): add server mode for headless HTTP deployment

Server mode allows Wails applications to run as pure HTTP servers
without native GUI dependencies. Enable with `-tags server` build tag.

Features:
- HTTP server with configurable host/port via ServerOptions
- WAILS_SERVER_HOST and WAILS_SERVER_PORT env var overrides
- WebSocket event broadcasting to connected browsers
- Browser clients represented as BrowserWindow (Window interface)
- Health check endpoint at /health
- Graceful shutdown with configurable timeout
- Docker support with Dockerfile.server template and tasks

Build and run:
  wails3 task build:server
  wails3 task run:server
  wails3 task build:docker
  wails3 task run:docker

Documentation at docs/guides/server-build.mdx

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(v3): add server mode for headless HTTP deployment

Server mode allows Wails applications to run as pure HTTP servers
without native GUI dependencies. Enable with `-tags server` build tag.

Features:
- HTTP server with configurable host/port via ServerOptions
- WAILS_SERVER_HOST and WAILS_SERVER_PORT env var overrides
- WebSocket event broadcasting to connected browsers
- Browser clients represented as BrowserWindow (Window interface)
- Health check endpoint at /health
- Graceful shutdown with configurable timeout
- Docker support with Dockerfile.server template and tasks

Build and run:
  wails3 task build:server
  wails3 task run:server
  wails3 task build:docker
  wails3 task run:docker

Documentation at docs/guides/server-build.mdx

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: address CodeRabbit review comments

- Fix corrupted test file with embedded terminal output
- Fix module name mismatch in gin-routing (was gin-example)
- Fix replace directive version mismatch in gin-service
- Fix placeholder module name in ios example (was changeme)
- Fix Dockerfile COPY path to work from both build contexts
- Fix bare URL in README (MD034 compliance)
- Fix comment accuracy in getScreens (returns error, not empty slice)
- Remove deprecated docker-compose version field
- Add port documentation in Taskfile template

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: address CodeRabbit review comments

- Add note about healthcheck wget not being available in distroless images
- Add !server build constraint to menu_windows.go and menu_darwin.go
- Downgrade window-visibility-test go.mod from 1.25 to 1.24 to match CI

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 14:33:44 +11:00
..
_common feat(v3): add server mode for headless HTTP deployment (#4903) 2026-01-25 14:33:44 +11:00
base Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
ios Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
lit Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
lit-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
preact [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
preact-ts [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
qwik Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
qwik-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
react [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
react-swc [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
react-swc-ts [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
react-ts [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
solid [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
solid-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
svelte Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
svelte-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
sveltekit Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
sveltekit-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
vanilla Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
vanilla-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
vue Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
vue-ts Add aria-label to elements in the helloworld app templates (#4760) 2025-12-10 18:19:40 +11:00
templates.go Add goModTidy function to clean up Go module dependencies during inst… (#4286) 2025-08-02 15:51:30 +10:00