Skip to content

v1.0.0

Choose a tag to compare

@VAQYBIN VAQYBIN released this 26 Jul 17:53
· 36 commits to main since this release
b59c8a7

1.0.0 (2026-07-26)

Features

  • backend: auth guard for /api and login rate limit (5985b62)
  • backend: configure the xray binary path via XRAY_BIN (ab7b2d5)
  • backend: conflict-safe profile update with auto-backup (a646181)
  • backend: count category entries and format CIDRs back to text (9dfba4e)
  • backend: expose config and reality target checks over the API (0efede8)
  • backend: expose geo category listing and paging routes (1ea709e)
  • backend: fastify server with /health endpoint (1d1133f)
  • backend: filesystem backup service for config profiles (5c48998)
  • backend: geo category matching with upper-cased codes (a7f1eb9)
  • backend: geo service with settings, cache and lookup (dfb5638)
  • backend: geo status, urls, update and match routes (cd3b43d)
  • backend: inject a dummy client before core validation (c1ee74d)
  • backend: judge a reality target from its TLS handshake (d88a908)
  • backend: list geo categories and page through their contents (4c9016f)
  • backend: monorepo scaffolding and env config loading (3069d9e)
  • backend: parse xray -test output into hinted errors (e3e5860)
  • backend: password auth with signed session cookie (f5e781f)
  • backend: probe a reality target over TLS, refusing internal hosts (20bc45a)
  • backend: profile CRUD and panel context routes (fad2c31)
  • backend: protobuf decoder for geosite and geoip .dat files (f81a332)
  • backend: reality x25519 keypair endpoints (299c162)
  • backend: register a Cloudflare WARP account for the recipe (eb147a9)
  • backend: run xray -test against a temporary config (c30cc20)
  • backend: static serving with SPA fallback (88f152a)
  • backend: typed Remnawave API client (b3f496d)
  • balancers and observatory in the topology editor (9e16408)
  • brand: add logo, social preview and app icons (44a63d8)
  • build frontend into docker image (0fabb01)
  • config diagnostics, edit safety, recipes and geo viewer (f1ab34e)
  • docker compose deployment (016b617)
  • docker: build for arm64 and own /data in the image (94c869a)
  • docker: compose on the published image, source build split out (e683a4e)
  • frontend: api client and react-query hooks (9dde0f6)
  • frontend: api hooks for core and reality checks (7cdfe35)
  • frontend: api hooks for geo status, update and match (f45fe6c)
  • frontend: append a geo category to a routing rule (105cb25)
  • frontend: apply blocking recipes when creating a profile (9dfe060)
  • frontend: backups panel with restore to draft (5054161)
  • frontend: balancer and observatory nodes in the graph (151ebe6)
  • frontend: balancing recipe (a873aaa)
  • frontend: blocking recipes for torrents, ads and private networks (bb0ea6a)
  • frontend: browse geo categories and their contents (d2f8618)
  • frontend: checkbox and multi-select field primitives with hints (777e7e3)
  • frontend: clients editor for vless/trojan inbounds (23fbb04)
  • frontend: collapsible section for advanced form fields (e40abe7)
  • frontend: collect reality targets from the config (562b1e1)
  • frontend: compatibility matrix wired into stream form selects (6f48ddd)
  • frontend: config file export name and import parsing (38017a6)
  • frontend: config settings dialog with routing options (c8b7447)
  • frontend: custom react flow nodes for topology (058edfe)
  • frontend: design tokens and ui kit (0b25d8a)
  • frontend: dns form with servers, hosts and query strategy (93ad756)
  • frontend: domain matcher for route tracing (8f32cf5)
  • frontend: domainStrategy passes and caveats in route tracing (69967cb)
  • frontend: explain the tracer and offer geo dialog from caveat (d88615d)
  • frontend: feed geo answers into tracing, gate it behind a toggle (2d4c0a3)
  • frontend: find a node from the dock and center the graph on it (b7a82a3)
  • frontend: flag nodes that carry config problems (039bdbc)
  • frontend: forms for balancer and observatory nodes (532d4f2)
  • frontend: freedom fragment, blackhole response, full wireguard form (7e5652b)
  • frontend: full reality settings with inbound and outbound modes (b3fc509)
  • frontend: full tls settings in stream form (a91848f)
  • frontend: full tls/reality/sniffing/transport/sockopt schemas (6027918)
  • frontend: full xray config schema with integrity validation (6b7dd1d)
  • frontend: full-width editor with save controls in tab bar (7ca28f8)
  • frontend: geo databases dialog with presets and status (5924d75)
  • frontend: geo viewer tab and category insertion into rules (37bdedc)
  • frontend: graph model with deterministic column layout (ec9100e)
  • frontend: graph mutations for balancers and observatory (789bec2)
  • frontend: hint support for text, select and string list fields (32cb058)
  • frontend: hooks for geo categories and category pages (467fa85)
  • frontend: hotkey hook with editable-target guard (4f9d997)
  • frontend: hysteria transport fields in stream form (572d209)
  • frontend: hysteria2 inbound, shadowsocks network, full sniffing form (fbb582a)
  • frontend: in-memory draft history store (8c1ebb6)
  • frontend: inbound fallbacks editor and vless decryption (7e967c9)
  • frontend: inspector form field primitives (f211592)
  • frontend: integrity checks for compat matrix, refs and rule format (46e33f7)
  • frontend: ip and cidr matcher for route tracing (3db6748)
  • frontend: json editor with diff preview and conflict handling (5af12c6)
  • frontend: JSON IntelliSense, motion polish, editor scroll fix, reality shortIds (6e9e941)
  • frontend: jump from a problem to its node or its line (6a47cbf)
  • frontend: key-value and list editor form primitives (9cac515)
  • frontend: keyboard shortcuts and cheatsheet dialog (7ae4041)
  • frontend: locate and search balancer nodes (a065616)
  • frontend: log section in config settings dialog (4b60d03)
  • frontend: map diagnostic paths to graph nodes (0a268ad)
  • frontend: merge primitives for config recipes (7b0d090)
  • frontend: moveRule mutation for routing rules (6c51892)
  • frontend: open the config check report from the topbar (b6e43ef)
  • frontend: open the recipe library from the topology dock (d631a0e)
  • frontend: outbound form with warp template (69a44d1)
  • frontend: outbound mux and sendThrough advanced section (4602eb2)
  • frontend: patchbay design tokens and custom select listbox (5937ed2)
  • frontend: patchbay topology, workbench layout, direct rule wiring (ec88d66)
  • frontend: persistent draft store (dc99d9e)
  • frontend: port, network and exact-list matchers for route tracing (94d0f38)
  • frontend: profile presets with auto-generated reality keys (25c6550)
  • frontend: profiles list with create and delete (a30a2ee)
  • frontend: protocol forms in node inspector with retag guard (ece4c1a)
  • frontend: proxy chain recipe (0606def)
  • frontend: pure config mutations for graph editing (014ae02)
  • frontend: recipe parameter forms and WARP account hook (45aa01a)
  • frontend: recipe registry with plan and validate dispatch (7861231)
  • frontend: recipes dialog with change preview and diff (ba280b8)
  • frontend: render balancer and observatory nodes (56f7c77)
  • frontend: report core and reality target checks in a dialog (e974112)
  • frontend: resolve a diagnostic path to its place in the document (4b0d492)
  • frontend: rework the profiles list and the login screen (3f1fe89)
  • frontend: routing, session guard and login screen (007688f)
  • frontend: rule form domain, ip and port fields with hints (74f3b62)
  • frontend: rule form with tag, network and protocol fields (5ee0ea7)
  • frontend: rule reorder buttons with selection follow (5479bb0)
  • frontend: rule source, typed dns and log schemas (92909b4)
  • frontend: rule verdicts and traced path in topology (3e6a9b6)
  • frontend: schemas and prefix matching for balancers (6af13ae)
  • frontend: search config nodes by tag, protocol, port and rule fields (2f2b4cb)
  • frontend: security-network compatibility matrix in xray entities (e3d46e1)
  • frontend: select, checkbox and form styles in ui kit (b8826c6)
  • frontend: sockopt section with dialer proxy select (0fe244d)
  • frontend: socks and http outbound servers form (e7e6573)
  • frontend: stream form mode prop and full transport fields (6b1d43d)
  • frontend: stream settings form for outbounds (597ef5a)
  • frontend: stream/reality form with key generation (9faad01)
  • frontend: topology canvas with column layout and graph editing (740d863)
  • frontend: topology tab with node inspector in editor (218fc4d)
  • frontend: trace panel with per-rule verdicts (c6e222b)
  • frontend: trace routes through a balancer (c67957b)
  • frontend: trace target input bar (2dcb8d1)
  • frontend: traceRoute picks the winning routing rule (5be5b9a)
  • frontend: typed fallbacks and hysteria inbound settings (b2439c3)
  • frontend: typed outbound settings, mux and per-protocol validation (f4aba90)
  • frontend: undo and redo for draft edits (bd97792)
  • frontend: validate balancers and observatory wiring (6db33ab)
  • frontend: value generators and reality/backups api hooks (328af80)
  • frontend: versions dialog with backup diff and config file tab (1a51c49)
  • frontend: vite react scaffolding with vitest (b92c5fa)
  • frontend: vless outbound vnext form (3fd3998)
  • frontend: warn when domain rules meet a blind sniffer (151eb13)
  • frontend: WARP recipe with service categories (8c7c48a)
  • frontend: wide dialog variant for diff preview (a0c83e5)
  • frontend: wire balancers on the canvas (c94fd54)
  • frontend: wire route tracer into the editor with e2e coverage (aa4af27)
  • frontend: wire rule form into node inspector (85d614e)
  • frontend: xray zod schemas for transports and inbounds (6cb4948)
  • frontend: xyflow dependency and route-level code splitting (da93c9b)
  • profile inbounds with active squads endpoint and hooks (4f33fd1)
  • publish the image to ghcr and automate releases (39bbddb)

Bug Fixes

  • backend: accept multi-valued RDN in the peer certificate (ab2a128)
  • backend: address the CodeQL findings (3563580)
  • backend: address the CodeQL findings (6c47741)
  • backend: block SSRF in geo database download (204bd60)
  • backend: constant-time plaintext password comparison via sha256 digests (378b4e1)
  • backend: match real core output and surface its warnings (33ce4c7)
  • backend: russian PATCH name validation message and backup filename route guard (270c8d9)
  • backend: unique backup filenames to prevent same-millisecond overwrite (aedbb21)
  • frontend: anchor JSON diagnostics to their actual place (c9c5222)
  • frontend: balancer strategy without its observatory is an error (c22c784)
  • frontend: balancer strategy without its observatory is an error (ab0ffad)
  • frontend: carry tag renames into every reference (284b97e)
  • frontend: drop legacy rule type field, use reality target over dest (7ba3d87)
  • frontend: drop trojan clients editor - panel injects users itself (1e78f06)
  • frontend: edge selection resync, duplicate tags, orphan positions cleanup (78c9f45)
  • frontend: edge selection, inspector remount and safe node deletion in topology (dcf7999)
  • frontend: gate conflict overwrite on validation and memoize editor extensions (5b24966)
  • frontend: global 401 redirect, self-contained image and review polish (f57abfd)
  • frontend: keep the dock from growing sideways when a tool opens (6643561)
  • frontend: keep the dock from growing sideways when a tool opens (5b0ba5e)
  • frontend: prevent dangling squad edges in graph builder (4921c86)
  • frontend: re-measure node handles after the enter animation (6c2f23e)
  • frontend: remount warp string-list fields after template fill (6efaee4)
  • frontend: reset node selection when config is replaced wholesale (66e5aa0)
  • frontend: reset node selection when mutation invalidates positional ids (8472846)
  • frontend: reset stale derived public key on new keypair generation (3eca4e9)
  • frontend: send content-type only with a request body (7f958c0)
  • frontend: settings-level flow for vless, clean settings on protocol switch (d2f8e54)
  • frontend: stop rebuilding the graph on every traced keystroke (2641ff6)
  • frontend: superRefine negative tests and cyrillic-500 mono subset (2a9334b)
  • frontend: type-safe fetch mock in api client tests (cbbc7c4)
  • frontend: verdict reason names the actual domain strategy (eb91224)
  • non-root container user and clean startup error output (81b1197)
  • profile creation template and bcrypt hash mangling guard (93a25c5)