Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/netbirdio/ios-client

Connect your devices into a single secure private WireGuard®-based mesh network with SSO/MFA and simple access controls.
https://github.com/netbirdio/ios-client

golang gomobile ios mesh nat-traversal netbird vpn wireguard wireguard-vpn zero-trust-network-access

Last synced: 1 day ago
JSON representation

Connect your devices into a single secure private WireGuard®-based mesh network with SSO/MFA and simple access controls.

Awesome Lists containing this project

README

        

















Start using NetBird at netbird.io


See Documentation


Join our Slack channel



# NetBird iOS Client

The NetBird iOS client allows connections from mobile devices running iOS 14.0+ to private resources in the NetBird network.

## Install
You can download and install the app from the App Store:

[Download on the App Store](https://apps.apple.com/app/netbird-p2p-vpn/id6469329339)

## Screenshots


mainscreen
peer-overview
menu

## Code structure
The code is divided into 4 parts:
- The main netbird Go code from the [NetBird](https://github.com/netbirdio/netbird) repo which is compiled into an xcframework. This contains most of the client logic.
- The network extension /NetbirdNetworkExtension that is running in the background where the compiled Go code is executed.
- The UI and app code under `/NetBird`
- The `/NetbirdKit/NetworkExtensionAdapter` that controls the extension and builds the link between UI and extension

## Requirements

- iOS 14.0+
- Xcode 12.0+
- gomobile

## Run locally

To build the app, this repository and the main netbird repository are needed.

```
git clone https://github.com/netbirdio/netbird.git
git clone https://github.com/netbirdio/ios-client.git
```

Building the xcframework from the main netbird repo. This needs to be stored in the root directory of the app
```
cd netbird
gomobile bind -target=ios -bundleid=io.netbird.framework -o ../ios-client/NetBirdSDK.xcframework ./client/ios/NetBirdSDK
```

Open the Xcode project, and we are ready to go.

> **Note:** The app can not be run in the iOS simulator. To test the app, a physical device needs to be connected to Xcode via cable and set as the run destination.

## Other project repositories

NetBird project is composed of multiple repositories:
- NetBird: https://github.com/netbirdio/netbird, contains the code for the agents and control plane services.
- Dashboard: https://github.com/netbirdio/dashboard, contains the Administration UI for the management service
- Documentations: https://github.com/netbirdio/docs, contains the documentation from https://netbird.io/docs
- Android Client: https://github.com/netbirdio/android-client