Commit Graph

60 Commits

Author SHA1 Message Date
Skyline d5a984f173 ci: tighten Go checks, fix buildTime vet, bump Echo and JWT
- Set buildTime with time.Format instead of fmt.Sprintf (satisfies go vet).
- Lint workflow: Go from go.mod, ubuntu-24.04, go vet + test + govulncheck,
  golangci-lint-action v6 / v1.64.5.
- Upgrade github.com/labstack/echo/v4 to v4.15.2 and jwt/v4 to v4.5.2 so
  govulncheck passes (drops vulnerable jwt v3 from the active graph).
- Document CI steps in README.
2026-05-06 15:06:07 -06:00
Skyline cdb4a1a764 Add Android client integration on the server
- Digital Asset Links endpoint and passkey origin handling for the mobile app

- FCM device token registration and push notification plumbing

- Session cookie configuration for native WebView flows

- Routes, locales, README, and small traffic/status handler updates
2026-05-03 17:45:28 -06:00
Skyline ee0399b26c Improve WireGuard apply flow and shell UI
- Respect tunnel running state when saving config; avoid implicit restart when down
- Optional pending wg.conf when tunnel stopped (WGUI_WGCONF_PENDING_WHEN_TUNNEL_STOPPED)
- wg-quick: best-effort down before up with retry on transient failures
- Dashboard: explicit green/red badges for server active/inactive (light theme)
- Client cards: metadata chips row uses full card width below header row
- Locales and README updates for behavior and troubleshooting
2026-05-01 17:04:03 -06:00
Skyline 1b07fe442d WireGuard UI v2: shell UI, i18n, passkeys, traffic, dashboard, logs
Summary
- Replace single-page flow with fixed shell layout (sidebar, top bar, Apply config
  orchestration) and wgshell.css styling.
- Add English/Spanish UI via embedded locale JSON and template tr() + client WG_T/wgT().

New packages / modules
- locale/: embedded es.json/en.json, T(), MsgMap(), JSONForHTML for shell pages.
- handler/render_helpers.go: renderShell, injectUILang, nav apply-config badge.
- handler/passkeys.go: WebAuthn register/login begin+finish, rename/remove, clear on
  global Passkeys disable; session passkey credential tracking.
- handler/wg_traffic_cache.go: in-memory WireGuard counter sampling, traffic series API.
- handler/wg_status_devices.go: wgctrl device/peer views, dashboard KPI payloads,
  live peer stats for client cards.
- handler/logs_tail.go: optional file tail + systemd/journal sections for Logs page.
- util/wg_quick.go, util/wg_synconf.go: gated wg-quick and wg syncconf after apply.
- util/sysctl_linux.go + sysctl_stub.go: optional IPv4 ip_forward sysctl.
- util/host_uptime.go, util/server_ui.go: host uptime and server UI helpers.

Templates & UX
- New pages: dashboard.html, traffic.html, logs.html; extended global_settings,
  login (passkey), profile, users_settings, base shell, clients card grid with
  peer traffic polling.

Model / routes
- Global settings: session timeout, UI theme/language, realtime stats, Passkeys toggle;
  multi-user CRUD, suspend, revoke sessions, admin role APIs (main.go + routes).

Docs
- README: WireGuard UI v2 section, expanded Features, operator notes, v2 screenshot
  (GitHub user-attachments CDN URL).

Chore
- .gitignore: .DS_Store, wireguard-ui-v2 build artifact; English comments across
  handlers, templates, CSS, helper.js.
2026-04-30 20:51:42 -06:00
0xCA fa33d3f66e
Session improvements (#510) 2024-01-06 09:11:20 +01:00
Khanh Ngo b3c22aa81f
Add golangci-lint CI (#516) 2023-12-31 21:46:30 +01:00
Khanh Ngo 45849a2aee
chore: code adjustment (#512) 2023-12-29 10:56:37 +01:00
Khanh Ngo 8cfe9a3d5b
Resolve conflict 2023-12-29 10:13:30 +01:00
0xCA 41bf0bc92c
Telegram support (#488) 2023-12-29 09:22:12 +01:00
Alexandra Stone a8e96f5457
Correct flag to helo and make shorter 2023-12-27 14:42:31 -07:00
0xCA a9be53899c
Subnet range selector, interface fixes (#481) 2023-12-27 09:08:55 +01:00
Vahid e73047b14f
Feature: Unix domain socket support (#492)
Co-authored-by: Khanh Ngo <k@ndk.name>
2023-12-25 20:31:11 +01:00
Marcus Wichelmann a06bce88e0
fix: add content-type check to user management routes to mitigate CSRF (#427) 2023-12-25 20:03:29 +01:00
Cameron 3024d36d76
env variable file support (#391) 2023-12-25 19:58:31 +01:00
Alexandra Stone 393f896616
Add hello hostname flag 2023-10-27 11:32:02 -06:00
Khanh Ngo b55543f424
fix: set random session secret if not set (#417) 2023-08-11 11:48:51 +02:00
ByteDream ec757286c5
Hide user settings if login is disabled (#356) (#361) 2023-05-24 12:04:02 +02:00
ByteDream 4fc52b62d2
Replace go.rice with native go embedding (#331) 2023-03-16 08:40:04 +01:00
Paul Dee 814093cdd3
Stamp git commit into docker builds. (#325) 2023-03-15 21:39:20 +01:00
ByteDream 3d59c7d0de
Add log levels (#332) 2023-03-15 21:29:08 +01:00
Arminas 9f20fe6c09
Show apply config button only when needed (#292) 2023-03-15 21:15:41 +01:00
Arminas 6dd5590940
User management panel (#289) 2023-03-15 21:13:53 +01:00
Arminas aadf099f50
About page (#296) 2023-02-16 17:31:24 +01:00
ByteDream a866977cb0
Add favicon (#288) 2023-02-16 17:09:24 +01:00
Alexander Sulfrian 227e51b9cf
SMTP: Support disabling encryption (#297) 2023-02-16 17:06:45 +01:00
Khanh Ngo 86e8ad41cb
feat: update user profile (#280) 2022-12-21 21:52:00 +01:00
Khanh Ngo ea55b36a6f
Update readme and code comments (#272) 2022-12-13 22:44:11 +01:00
Jag_k 63d6e1f391
Add support to SSL/TLS/SSLTLS encryption for SMTP (#221) 2022-09-30 10:26:17 +02:00
Joao M 0a33ab35b6
Minor Changes (#210) 2022-09-30 10:21:20 +02:00
Marcus Wichelmann 1c6fb6a424
Write the initial wireguard config on start, if none exists (#207) 2022-07-14 08:40:16 +02:00
Marcus Wichelmann 031d2cb7e8
Mitigate CSRF attacks (#206) 2022-07-14 08:36:47 +02:00
Quentin Machu 87b08a8f7c
*: allows for BASE_PATH configuration (#183) 2022-04-25 09:17:13 +02:00
slch 100c4ee1f4
Custom wg conf template (#179) 2022-04-24 09:42:08 +02:00
ned3y2k 0224e1f137
Implements Wake On Lan and management features (#164) 2022-03-20 10:03:27 +01:00
Tagada af62be378f
SMTP support (#146) 2022-01-29 09:01:37 +01:00
Khanh Ngo bf2b74fe84
Update healthcheck (#124) 2021-11-21 10:31:27 +01:00
Luke Lambert abc0f74551
Fix flag to disable login (#119) 2021-11-12 21:17:18 +01:00
Seubpong Monsar 4093722926
Fixed typo (#113) 2021-11-09 11:01:42 +01:00
dan 59abd1506f
Expand env vars and flags (#84) 2021-08-29 20:26:12 +02:00
Georgios Komninos b7c0990dcb
Abstracts database storage & Status page UI (#88) 2021-08-28 15:10:30 +02:00
Georgios Komninos 1711530dda
Fixes security issue & Adds support to sent configuration via email (#83) 2021-08-08 19:55:59 +02:00
tituspijean b8142b80c2
Add configurable bind address (#36) 2020-10-10 16:01:35 +02:00
Khanh Ngo 9dca2b7361
Login disable (#35)
Add ability to disable authentication
2020-10-09 23:33:29 +02:00
Khanh Ngo cd7f6e500a
Edit wireguard client (#19)
* Add the ability to modify an existing client
* Update client page using Ajax
2020-06-02 11:20:50 +07:00
Khanh Ngo 9169e75e88
Show app version on the UI 2020-06-01 15:24:11 +07:00
Khanh Ngo 8aa84b2be6
Add build information to the bianry 2020-06-01 13:03:10 +07:00
Khanh Ngo 9a27cc366f
Single binary build (#10)
Single binary build
Use go rice for embedding the static files and templates to the binary file
2020-05-21 15:51:24 +07:00
Khanh Ngo 91f06914d4
Add download button 2020-04-25 16:58:14 +07:00
Khanh Ngo b12feb08bd
Add docker build 2020-04-25 00:33:22 +07:00
Khanh Ngo a5fbb7b58a
Add authentication 2020-04-24 18:14:54 +07:00