ProductPromotion
Logo

Rust

made by https://0x3d.site

GitHub - upvpn/upvpn-app: UpVPN is the world's first Serverless VPN. The VPN app is available for macOS, Linux, Windows, and Android. The UpVPN service can also be used with any WireGuard compatible client using the Web Device feature.
UpVPN is the world's first Serverless VPN. The VPN app is available for macOS, Linux, Windows, and Android. The UpVPN service can also be used with any WireGuard compatible client using the Web...
Visit Site

GitHub - upvpn/upvpn-app: UpVPN is the world's first Serverless VPN. The VPN app is available for macOS, Linux, Windows, and Android. The UpVPN service can also be used with any WireGuard compatible client using the Web Device feature.

GitHub - upvpn/upvpn-app: UpVPN is the world's first Serverless VPN. The VPN app is available for macOS, Linux, Windows, and Android. The UpVPN service can also be used with any WireGuard compatible client using the Web Device feature.

upvpn

upvpn (pronounced Up VPN) app is a WireGuard VPN client for Linux, Windows, Android, tvOS, iOS, and macOS. For more information please visit https://upvpn.app

upvpn desktop app is made up of UI, CLI and background Daemon.

Serverless

upvpn utilizes a serverless computing model, where a Linux-based WireGuard server is provisioned on public cloud providers when the app requests a VPN connection. The server is deprovisioned when the app requests to disconnect from the VPN.

This entire process occurs with a single click or tap on the user interface, or through a single command in the terminal.

Install

Alternatively, visit Github Releases or the website at https://upvpn.app/download

Code

Organization

Crate or Directory Description
upvpn-android Standalone app for Android.
upvpn-apple Standalone apps for tvOS, iOS and macOS built using Network Extension. The macOS app doesn't include the upvpn CLI.
upvpn-cli Code for upvpn cli.
upvpn-config Configuration read from env vars, upvpn.conf.toml are merged at runtime in upvpn-config and is source of runtime configuration for upvpn-cli, upvpn-daemon, and upvpn-ui.
upvpn-controller Defines GRPC protobuf for APIs exposed by upvpn-daemon to be consumed by upvpn-cli and upvpn-ui.
upvpn-daemon Daemon is responsible for orchestrating a VPN session. It takes input from upvpn-cli or upvpn-ui via GRPC (defined in upvpn-controller) and make calls to backend server via separate GRPC (defined in upvpn-server). When backend informs that a server is ready daemon configures network tunnel, see NetworkDependency.md for more info.
upvpn-entity Defines data models used by upvpn-daemon to persist data on disk in sqlite database.
upvpn-migration Defines database migration from which upvpn-entity is generated.
upvpn-packages Contains resources to package binaries for distribution on macOS (pkg), Linux (rpm & deb), and Windows (msi).
upvpn-server Contains GRPC protobuf definitions and code for communication with backend server.
upvpn-types Defines common Rust types for data types used in various crates. These are also used to generate Typescript types for upvpn-ui for seamless serialization and deserialization across language boundaries.
upvpn-ui A Tauri based desktop app. GPRC communication with daemon is done in Rust. Typescript code interact with Rust code via Tauri commands.

Building Desktop Apps

Please see Build.md

Building Android App

Please see upvpn-android/README.md

Building iOS, tvOS, macOS Apps

Please see upvpn-apple/README.md

License

Android app, apps for Apple Platforms, and all Rust crates in this repository are licensed under GPL version 3.

Copyright (C) 2023 upvpn LLC

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

More Resources
to explore the angular.

mail [email protected] to add your project or resources here 🔥.

Related Articles
to learn about angular.

FAQ's
to learn more about Angular JS.

mail [email protected] to add more queries here 🔍.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory