Skip to content

IRNova/Nova-Client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nova

Nova Client

An optimised, Nova-branded proxy client — a streamlined Karing fork — with the Nova Radar Cloudflare clean‑IP scanner built right in.

Built in Flutter · Dark‑first · Bilingual (English + فارسی) · Follows the Nova Proxy design language.

License Stars Developer

Designed and developed by Vahid Hashemi


🌐 Links

Website Telegram Channel Telegram Group


📥 Download Center

Choose your platform to download the latest version of Nova Client.

Android

Android

v1.1.0-beta



iOS

iOS / iPadOS

TestFlight (beta)



Windows

Windows

v1.1.0-beta



macOS

macOS

v1.1.0-beta



Linux

Linux

v1.1.0-beta



Releases

All Releases

GitHub Changelog




✨ What's new in v1.1.0-beta

The proxy is now live on every platform (Android, iOS, Windows, macOS), and the server experience got a big upgrade:

  • 🌍 Rich server list: every node shows its country and city, protocol (VLESS / VMess / Trojan / Shadowsocks / Hysteria2 / TUIC), transport (WS / gRPC, TLS / Reality), TLS fingerprint and SNI, and a live latency in milliseconds.
  • 🔎 Search your nodes: filter servers by name, country, protocol, address or SNI.
  • Auto (fastest): Nova picks the lowest‑latency working node for you, and fails over automatically if one goes down.
  • 🆓 Free forever, no reselling: a clear "Nova is free, never pay anyone for these configs" banner, plus one‑tap Follow Nova buttons (Telegram, Instagram, GitHub, website) so you always reach the real community.
  • 🇮🇷 Smart routing for Iran: Iranian (.ir) sites go direct on your real IP so they keep loading fast, even when a rule‑set can't download. Optional ad‑blocking and LAN bypass too.
  • 🌐 Bilingual everywhere: the whole app, including these new screens, in English and فارسی (RTL).

📖 What this is

Nova Client brings two Nova tools into a single cross‑platform app:

  1. A proxy client in the spirit of Karing (a sing‑box GUI) — connect, manage profiles & subscriptions, and control routing — re‑skinned and slimmed down to the Nova Proxy visual language.
  2. Nova Radar — the Cloudflare clean‑IP scanner (originally a Go + Wails desktop app) ported to Dart and consolidated in as a first‑class tab.

As of v1.1.0-beta the proxy data path is live: the sing‑box core connects on all four platforms, with subscription parsing, per‑node latency, smart routing, and the Nova Radar scanner all working.

📊 Status at a glance

Area State
Nova design system (colors, gradient, type, radii) ✅ Ported from tokens.css
Brand mark (the neon “N”), gradient, badges ✅ Drawn from the brand SVG
App shell + responsive navigation (rail / bottom bar)
Bilingual UI (English + فارسی, RTL)
Dashboard (connect orb, live traffic, active profile) ✅ UI · drives the proxy controller
Profiles & subscriptions (add / select / persist)
Routing controls (mode + rule toggles, .ir direct)
Server list (per‑node latency, country/city, protocol, transport, SNI, search)
Nova Radar scanner Functional (source fetch → IP gen → two‑phase TCP+TLS verify → latency sort → live progress → export)
sing‑box core (native VPN data path) ✅ Live on Android · iOS · Windows · macOS

🎨 Design language

The whole UI is driven by the Nova Proxy design tokens, ported 1:1 from irnova-site/design-system/tokens.css (kept here at docs/nova-design-tokens.css for provenance):

  • Signature gradient linear-gradient(120deg, #22d3ee → #818cf8 → #a855f7) — buttons, the logo, gradient text, progress, the connect orb.
  • Dark‑first surfaces (#05060a page, translucent surface cards, hairline borders) with an opt‑in light theme.
  • Accents cyan #22d3ee / violet #a855f7 / indigo #818cf8.
  • Radii 16 (cards) / 10 (inputs) / pill, and the accent elevation shadow.
  • Type Inter (Latin) + Vazirmatn (Farsi), with the fluid weight/tracking scale.

🛰️ Nova Radar — what was ported

The Go backend (scanner.go / sources.go) was reimplemented in pure Dart using dart:io sockets, preserving the original algorithm:

  1. Fetch the enabled IP sources in parallel (9 sources: Cloudflare official, ASN ranges, CM list, reverse‑proxy IPs, resolved domains), with the built‑in Cloudflare ranges as fallback.
  2. Generate up to 512 random candidate IPs spread across the CIDRs.
  3. Phase 1 — quick scan: bounded‑concurrency TCP connect to each ip:port.
  4. Phase 2 — deep test: a real TLS handshake (with the Nova Worker SNI) on TLS ports, or a TCP read probe on HTTP ports — 3× per candidate, keep those passing ≥2.
  5. Sort fastest‑first, stream results live, and export as ip:port#Nova-XXXXX.

🗺️ Roadmap

  • Native sing‑box core + per‑platform VPN service behind SingboxProxyController.
  • Subscription parsing & node health‑check / ping.
  • One‑click “use this IP” — feed a Radar result straight into the active profile.
  • iCloud / WebDAV profile sync (Karing parity).

👥 Credits & Support

If Nova helps you, please ⭐ star the repo and consider a small donation — it keeps the project alive and free for everyone.

Coin Address
TON UQD51lGC35rP_SbVYgbFA7CEEii4GVMFgqj4N8fiGi6m425w

Made with ❤️ for a free and open internet.


Designed and developed by Vahid Hashemi (@iiviirv) for the Nova Proxy Group.

About

Nova Client is the companion app for the Nova ecosystem — a lightweight, multi-platform client that connects seamlessly to your Nova Server.

Resources

License

Stars

67 stars

Watchers

1 watching

Forks

Sponsor this project

Packages

 
 
 

Contributors