Repolode
DeviceFarmer

DeviceFarmer/stf

A self-hosted web app for remotely viewing, controlling and managing Android devices (and experimental iOS) from a browser.

Open-source alternative to:AWS Device FarmBrowserStack App Live

Stars
4,648
Forks
639
Open issues
159
Last commit
4 hours ago

What is it?

STF (Smartphone Test Farm) lets developers and QA teams debug phones, smartwatches and other devices remotely through a web browser. Devices connected over USB to a host machine appear in a shared inventory, where users can see the live screen, send touch and keyboard input, install and launch APK files, run ADB and shell commands, view logs, and browse the file system.

Beyond single-device control, STF includes a booking system that reserves device sets for users during set time windows, and a partitioning system that allocates devices to different projects or organizations. Administrators can manage users, devices and group quotas, and the project offers a REST API and Prometheus metrics for integration. Support for iOS is listed as experimental and requires a signed WebDriverAgent prepared with Xcode.

STF is deployed on a Linux host with Node.js, RethinkDB, ADB and several native libraries, or run via Docker or the npm package. The README notes that internal communication between processes is unencrypted and is designed for trusted users, so multi-user deployments need extra hardening.

Key features

  • 01Real-time screen view with touch, text and meta-key input from the browser
  • 02Drag-and-drop APK installation and launching
  • 03Reverse port forwarding and adb connect for remote devices
  • 04Device inventory with search, battery and hardware info, and status tracking
  • 05Booking and partitioning of device groups for users and organizations
  • 06REST API and Prometheus metrics

Use cases

  • Running manual QA sessions on a shared lab of physical Android phones
  • Debugging an app in Android Studio while viewing the device screen in a browser
  • Reserving a set of test devices for a team during a fixed time window
  • Managing a remote device farm across several USB hosts

In collections

Topics

FAQ

What is stf?
A self-hosted web app for remotely viewing, controlling and managing Android devices (and experimental iOS) from a browser. STF (Smartphone Test Farm) lets developers and QA teams debug phones, smartwatches and other devices remotely through a web browser. Devices connected over USB to a host machine appear in a shared inventory, where users can see the live screen, send touch and keyboard input, install and launch APK files, run ADB and shell commands, view logs, and browse the file system.
Is stf free to use? What license does it have?
stf is open source under the Other license. Check the license terms before using it in commercial products.
Is stf still maintained?
Actively maintained. The last commit to stf was on Nov 7, 2026.
What can I use stf for?
Running manual QA sessions on a shared lab of physical Android phones Debugging an app in Android Studio while viewing the device screen in a browser Reserving a set of test devices for a team during a fixed time window Managing a remote device farm across several USB hosts
Where can I get stf?
The source code and installation instructions are on GitHub: https://github.com/DeviceFarmer/stf

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects