3ba11330ccd6c0af5b30906a5119fbbb63eda8eb
CI / Analyze & Test (push) Failing after 2m25s
- Add GitHub Actions CI workflow for analyze and tests - Update README with project structure, build instructions, and license info - Document iperf3 binary bundling process
iperf3-gui
A Flutter-based Android GUI wrapper for iperf3, the popular network performance measurement tool.
Features
- Client-mode network throughput testing
- Simple UI: enter server address, port, and press GO
- Raw iperf3 output display
- Bundled iperf3 v3.21 binaries for arm64-v8a and armeabi-v7a
Architecture
lib/
├── domain/
│ ├── models/ # TestConfiguration, Iperf3Result
│ └── services/ # Iperf3Service (Process runner)
├── ui/
│ └── features/
│ └── test_run/ # TestRunScreen, TestRunViewModel
├── main.dart # App entry point
└── pubspec.yaml # Dependencies: provider, path_provider
Building
Prerequisites:
- Flutter 3.47+
- Android SDK with platform android-36
- JDK 17
flutter create . --org novoyuuparosk --project-name iperf3gui
flutter pub get
flutter analyze
flutter build apk --debug
Building iperf3 binaries
To rebuild the bundled iperf3 binaries, use the NDK:
cd /tmp
wget https://github.com/esnet/iperf/archive/refs/tags/3.21.tar.gz
tar -xzf 3.21.tar.gz
cd iperf-3.21
# Configure for Android arm64-v8a
./configure --host=aarch64-linux-android \
--with-openssl=/opt/android-sdk/ndk/27.0.12077973/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr \
--disable-sctp
# Build
make CC=aarch64-linux-android21-clang \
AR=aarch64-linux-android-ar \
AR=aarch64-linux-android-ld
# Copy to project
cp src/iperf3 /path/to/iperf3-gui/assets/iperf3/arm64-v8a/iperf3
License
MIT — bundled iperf3 v3.21 is BSD-3-Clause licensed.
Releases
1
iperf3-gui v0.1.0
Latest
Languages
C
70.4%
Makefile
11.5%
Dart
7.8%
C++
2.6%
Roff
2.5%
Other
5.2%