Download the PHP package iamdevroyal/laravel-mobile-jump without Composer

On this page you can find all versions of the php package iamdevroyal/laravel-mobile-jump. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-mobile-jump

๐Ÿ“ฑ Laravel Mobile Jump

Latest Version on Packagist Total Downloads PHP Version Laravel

Scan a QR code. See your Laravel app on your phone. Instantly.

Mobile Jump bridges the gap between your local Laravel development server and any Android device on the same Wi-Fi network. Run one command, scan a QR code with the companion app, and your phone loads your local Vue or React frontend in seconds โ€” with hot module replacement, API access, and a full native bridge for camera, microphone, location, biometrics, and more.

No tunnelling services. No internet required. No configuration headaches.


โœจ Features

Feature Description
๐Ÿ”Œ Zero-config auto-detection Automatically detects your LAN IP โ€” just run and scan
๐Ÿ“ฆ Universal Works with any Laravel app and any frontend (Vue, React, Svelte, vanilla JS)
๐Ÿ—„๏ธ Pluggable storage Redis (fastest), Database, or File fallback โ€” choose what fits your stack
๐Ÿ–ฅ๏ธ Browser dashboard Live session monitor at /mobile-jump/dashboard
๐Ÿ“ฑ Android companion APK Pre-built and bundled โ€” no Play Store, no build tools needed
๐Ÿงฉ Frontend stubs Ready-to-use Vue 3 composable and React hook
๐Ÿ” Native permissions Camera, microphone, location, biometrics โ€” requested on demand
๐ŸŒ‰ Rich native bridge 20+ native Android capabilities accessible from JavaScript
โœ… Fully tested PHPUnit + Orchestra Testbench test suite included

๐Ÿ“‹ Requirements


๐Ÿš€ Installation

Step 1 โ€” Install via Composer

The service provider is auto-discovered โ€” no manual registration needed.

Step 2 โ€” Run the Install Wizard

The wizard will:

Step 3 โ€” (Optional) Database Migration

Only needed if MOBILE_JUMP_STORAGE=database:


๐Ÿ›  Frontend Setup (Required)

Mobile Jump needs your Vite dev server to listen on all network interfaces so your Android device can reach it over Wi-Fi.

Note: The install wizard (php artisan mobile:jump:install) attempts to do this automatically. Only follow these manual steps if you skipped the wizard or see Frontend not reachable warnings.

Vue 3 / Vite

Option A โ€” vite.config.js (recommended):

Add a server block to your vite.config.js:

Then simply run:

Option B โ€” package.json dev script:

Update your package.json to include --host:

โš ๏ธ PowerShell users: Do NOT use npm run dev -- --host 0.0.0.0. PowerShell passes 0.0.0.0 as a positional argument (root directory) rather than a --host value. Use one of the options above instead.

React / Vite

Same as Vue โ€” add server.host: '0.0.0.0' to your vite.config.js:

Next.js (React)

Next.js uses its own server. Run it with:

Then set MOBILE_JUMP_FRONTEND_PORT=3000 in your .env.


โšก Avoiding "Axios Network Error" on Mobile Devices

When testing on an Android device via Mobile Jump, your web app loads at http://<your-lan-ip>:5173. If your API client hardcodes http://127.0.0.1:8000 or reads a .env file containing VITE_API_URL=http://127.0.0.1:8000, the mobile device will try to send API requests to 127.0.0.1:8000 (which points to the phone itself), causing an Axios Network Error.

Solution 1 โ€” Dynamic API Base URL Helper

In your primary API client file (e.g. src/api/client.js):

Solution 2 โ€” Dynamic Reverb / WebSockets Host

In your Echo / Reverb composable (e.g. src/composables/useReverb.js):


๐ŸŽฏ Usage

Start a Development Session

Requires Vite configured for host: '0.0.0.0' โ€” see Frontend Setup above.

A compact QR code renders in your terminal. You'll see something like:

Command Options

Browser Dashboard

Open the URL shown in the terminal banner, or navigate directly to:

The dashboard shows live session status, connection time, device info, and a button to disconnect the session.


๐Ÿ“ฑ Android Companion App

The companion APK is bundled directly in the package. After installation it is copied to:

Transfer it to your phone:

On first launch, the app requests:


โš™๏ธ Configuration

Publish the config file:

config/mobile-jump.php:

Environment Variables

Add these to your .env as needed:


๐ŸŒ Frontend Integration

Vue 3

After running php artisan mobile:jump:install and choosing Vue, stubs are placed in vendor-stubs/mobile-jump/. Copy them to your project:

React / TypeScript

Direct Bridge Access (Any Framework)

The companion app exposes a native bridge on window.MobileJumpNative:


๐Ÿ” Native Bridge โ€” Full Reference

All methods available at window.MobileJumpNative (also aliased as window.KorpaBeeNative):

Device & Platform

Method Returns Description
getDeviceInfo() string (JSON) Device metadata โ€” model, OS version, runner version
getPlatform() "android" Platform identifier
isRunnerEnvironment() "true" Feature detection flag

Permissions

Method Returns Description
requestPermissions() void Triggers Android system permission dialog for camera, mic, and location
hasCameraPermission() boolean Whether camera permission is currently granted
hasAudioPermission() boolean Whether microphone permission is currently granted
hasLocationPermission() boolean Whether location permission is currently granted

Location

Method Returns Description
getLastKnownLocation() string (JSON) Last cached GPS/network location

Biometrics

Method Returns Description
getBiometricStatus() string (JSON) Fingerprint/Face ID availability โ€” ready, not_enrolled, no_hardware

Native UI

Method Returns Description
showToast(message) void Short Android Toast notification
showToastLong(message) void Long Android Toast notification
shareText(title, text) boolean Opens the native Android share sheet

Clipboard

Method Returns Description
copyToClipboard(text) boolean Writes text to Android system clipboard
readFromClipboard() string Reads current clipboard text

Haptics

Method Returns Description
vibrate(milliseconds) void Haptic vibration (e.g. vibrate(40) for a button tap feel)

Diagnostics

Method Returns Description
getBatteryLevel() string Battery percentage e.g. "85", or "-1" if unavailable
isNetworkAvailable() "true" / "false" Whether any network connection is active

Persistent Storage

Method Returns Description
setStorageItem(key, value) boolean Stores a string value in Android SharedPreferences
getStorageItem(key) string Retrieves a stored value
removeStorageItem(key) boolean Removes a stored value

๐Ÿ”Œ API Endpoints

All endpoints are prefixed with the configured route_prefix (default: mobile-jump).

Method Endpoint Description
POST /mobile-jump/api/connect Device registers connection with session ID
GET /mobile-jump/api/status/{id} Poll session status (waiting / connected)
GET /mobile-jump/api/qr/{id} Returns the QR code as an SVG image
DELETE /mobile-jump/api/disconnect/{id} Ends the session
GET /mobile-jump/dashboard Browser-based session dashboard

๐Ÿงช Testing

Run the included test suite:

The tests use Orchestra Testbench and the File session store โ€” no Redis or database needed to run tests.


๐Ÿ› ๏ธ How It Works


๐Ÿ“ฆ Changelog

See CHANGELOG.md for release history.


๐Ÿค Contributing

Contributions, issues, and feature requests are welcome. Please open an issue first to discuss major changes.


๐Ÿ“„ License

MIT โ€” see LICENSE.


๐Ÿ™ Credits

Built by iamdevroyal.

Inspired by the need to preview complex Laravel + Vue apps on real Android devices during development โ€” without the overhead of cloud tunnels, staging environments, or APK rebuilds.


u{1F4F1} Android App Repository

The companion Android app source code lives in its own repository:

iamdevroyal/android-mobile-jump


All versions of laravel-mobile-jump with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
illuminate/support Version ^11.0|^12.0|^13.0
bacon/bacon-qr-code Version ^2.0|^3.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package iamdevroyal/laravel-mobile-jump contains the following files

Loading the files please wait ...