Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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.
- Host: GitHub
- URL: https://github.com/netbirdio/ios-client
- Owner: netbirdio
- License: gpl-3.0
- Created: 2024-02-27T08:26:19.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-02-29T18:41:15.000Z (9 months ago)
- Last Synced: 2024-02-29T19:39:55.156Z (9 months ago)
- Topics: golang, gomobile, ios, mesh, nat-traversal, netbird, vpn, wireguard, wireguard-vpn, zero-trust-network-access
- Language: Swift
- Homepage: https://netbird.io
- Size: 8.36 MB
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
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:[](https://apps.apple.com/app/netbird-p2p-vpn/id6469329339)
## Screenshots
## 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