diff --git a/PRIVACY_POLICY.md b/PRIVACY_POLICY.md index 8a11dc0..a683b58 100644 --- a/PRIVACY_POLICY.md +++ b/PRIVACY_POLICY.md @@ -1,11 +1,11 @@ Privacy Policy Last updated: July 2025 -ReVoltVPN is a free VPN service built and operated by a solo developer. +ReVoltVPN is a free VPN service built and operated by ReVolt Team. What we collect We collect the minimum required to operate the service: A randomly generated device ID created on your phone. This is not linked to your identity in any way. -Your active session status and data usage for the current session only. This is stored in memory and deleted when your session ends. +Your active session status and data usage for the current session only. Sessions last up to 1 hour, then expire. All session data is stored in memory and deleted permanently when your session ends. What we do not collect diff --git a/README.md b/README.md index 0f8d0e4..1dbc8bf 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@
# ReVoltVPN -A free VPN app I built in my spare time as a student with basically no prior experience. +A free VPN app I built in my spare time as a student with basically no prior experience. Now backed by the ReVolt team handling server security and infrastructure.
@@ -29,23 +29,22 @@ When your data runs out you get throttled to 1.5 Mbps instead of getting cut off
## The stack
- **App** — Flutter (Android only for now)
- **Server** — A single Debian box rented from Hetzner, located in Finland
-- **VPN protocol** — AmneziaWG, which is WireGuard with obfuscation so it works on carriers that block standard WireGuard
+- **VPN protocol** — VLESS with Xray, which is great for bypassing DPI in countries that are aggressive with it
- **Backend** — A Python script I wrote called Hivemind that manages sessions, data quotas, and throttling
- **Ads** — Google AdMob rewarded ads, verified server-side so fake callbacks don't work
---
## Limitations (being honest)
-- One server, one location (Finland). That's all I can afford right now
+- One server, one location (Finland). That's all I can afford right now (planning to escalate further)
- 2 cores and 4GB RAM. It will not handle thousands of concurrent users
- iOS is not supported and probably won't be for a while
-- Countries with very aggressive DPI (China, Russia, etc.) may still have issues
-- I'm a student doing this in my free time. Expect rough edges
+- The app is built by me in my free time — expect rough edges
---
## Why I built this
-Free time project. Wanted to learn how VPNs actually work under the hood. Ended up building the whole thing from scratch — the Flutter app, the AmneziaWG setup, the session management backend, the AdMob integration. It took way longer than expected.
+Free time project. I wanted to learn how VPNs actually work under the hood. Ended up building the whole thing from scratch — the Flutter app, Hivemind backend, and AdMob integration are made by me, while server security and VLESS/Xray setup are handled by the ReVolt team. It took way longer than expected.
---
diff --git a/lib/logic/session_timer.dart b/lib/logic/session_timer.dart
index d4dfbb8..664fbcd 100644
--- a/lib/logic/session_timer.dart
+++ b/lib/logic/session_timer.dart
@@ -109,7 +109,7 @@ class SessionTimer extends ChangeNotifier {
}
// ── Network-blip reconnect: VPN dropped and came back on its own ──
- // The underlying AmneziaWG tunnel may briefly flap. If we weren't
+ // The underlying VLESS tunnel may briefly flap. If we weren't
// explicitly stopped by the user, resume where we left off.
if (vpnConnection.status == VpnStatus.connected &&
!isRunning &&
diff --git a/lib/main.dart b/lib/main.dart
index 7d23457..a72fb2f 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -51,7 +51,7 @@ class ReVoltApp extends StatelessWidget {
// MultiProvider injects global state controllers down the widget tree.
return MultiProvider(
providers: [
- // Manages the WireGuard tunnel lifecycle
+ // Manages the VLESS tunnel lifecycle
ChangeNotifierProvider(create: (_) => VpnConnection()),
// Manages the 1-hour session clock.