Laravel Magazine

NativePHP Mobile Goes Free and Open Source: Everything You Need to Know

Eric Van Johnson ·
NativePHP Mobile Goes Free and Open Source: Everything You Need to Know

It's not often that a paid product becomes free. When NativePHP announced that the entire mobile framework -- everything you need to build and ship native iOS and Android apps with Laravel -- would cost absolutely nothing starting with v3, it caught a lot of developers off guard.

The framework is now MIT-licensed. The core and all essential plugins are available to the entire Laravel community at zero cost. Here's what actually changed and what the new architecture looks like.


What Changed in v3

Previous versions of NativePHP Mobile were sold under a commercial license. With v3, the team made a deliberate decision to open the project to the full Laravel community. The entire framework, including the core and essential plugins, is now free to use for commercial projects.

The license shift to MIT means you can use it in client work, products you sell, and open-source projects without any licensing overhead.


The New Plugin Architecture

The biggest architectural change in v3 is the move from a monolithic core to a modular plugin system. In previous versions, native functionality was bundled into the core package. In v3, almost every piece of native functionality has moved into its own standalone Composer package.

Each plugin contains its own Swift and Kotlin code, permission manifests, and native dependencies. This means you only pull in what your app actually needs.

# Install the core
composer require nativephp/mobile

# Add only the plugins you need
composer require nativephp/camera
composer require nativephp/push-notifications
composer require nativephp/biometrics

For smaller apps, this keeps the compiled binary lighter. For larger apps, it gives you precise control over what native capabilities are included.


Persistent PHP Runtime and ZTS Support

Two performance improvements in v3 deserve attention.

The Persistent PHP Runtime change means Laravel boots once when the app starts, and the PHP kernel is reused across all subsequent requests within the app session. Previously, each interaction could trigger a fresh boot cycle. The result: response times drop from 200-300ms to roughly 5-30ms.

ZTS (Thread-Safe PHP) support enables background queue workers. A dedicated background thread runs queued Laravel jobs off the main thread on both iOS and Android. This means you can dispatch jobs from your mobile app's code and they'll be processed asynchronously -- the same Laravel queue system you already know, running natively on a phone.

// In your NativePHP app, dispatch jobs exactly like a web app
ProcessUploadedImage::dispatch($imageData);
SyncUserPreferences::dispatch($user);

Jump: Test on a Real Device Without Compiling

One of the biggest friction points in mobile development is testing on a real device. Historically that meant setting up developer certificates, compiling, and deploying -- every single time.

Jump is a companion app you install on your physical iOS or Android device. Once installed, you run a single Artisan command and scan a QR code:

php artisan native:jump

Your app loads on the real device without compilation or developer mode. For rapid iteration during development, this is a significant workflow improvement.


Mimi: AI-Assisted NativePHP Development

The NativePHP team also introduced Mimi, an AI-assisted development environment specifically for building mobile apps with NativePHP. Projects are created and previewed in the browser, tested via Jump on a real device, and then shipped to the App Store and Google Play.

It leverages modern LLMs with NativePHP-specific context, aiming to let developers build and ship new apps in a matter of minutes rather than days.


Getting Started

If you haven't tried NativePHP Mobile before, now is the best time. The barrier to entry just dropped to zero, the performance story is significantly better than v2, and the ecosystem tooling (Jump, Mimi) makes the development loop tighter than it's ever been.

Check out the official documentation at nativephp.com/docs/mobile/3 to get started.


Sources:

Stay Updated

Subscribe to our newsletter

Get latest news, tutorials, community articles and podcast episodes delivered to your inbox.

Weekly articles
We send a new issue of the newsletter every week on Friday.
No spam
We'll never share your email address and you can opt out at any time.