PHP · Livewire · Native

Write PHP, ship a native app.

NativeBlade runs your Laravel and Livewire code on the device with php-wasm, wrapped in a real native shell. The camera, push, biometrics, and the app stores are one chained PHP call away. No rewrite, no separate API.

Live in the App Store and Google Play today
Built on
Laravel
Livewire
Tauri
php-wasm
Targets
5
iOS, Android, macOS, Windows, Linux
Codebases
Just one
The Laravel app you already have
License
MIT
Open source, no lock-in
app/Livewire/Dashboard.php
// one chained call, several native actions
return NativeBlade::alert(fn (Dialog $d) => $d
        ->title('Hey')
        ->message('Welcome back!'))
    ->notification(fn (Notification $n) => $n
        ->title('Heads up')
        ->body('3 new lessons available'))
    ->vibrate(200)
    ->navigate('/dashboard')
    ->transition('slide')
    ->toResponse();
The native API

Native actions read like PHP, because they are.

Dialogs, notifications, haptics, camera, biometrics, payments. Every native capability is a chainable method on one fluent response. Queue as many as you want and dispatch them in a single call.

  • Fully typed, with autocomplete for every builder
  • Call a plugin you did not declare and the build fails, not the app
  • Same code path on iOS, Android, and desktop
Everything in the box

The whole toolchain, from your Laravel repo to the stores.

NativeBlade is not a wrapper. It is a runtime, a native plugin system, a UI layer, and a cloud build service that all speak PHP.

Native plugins

Camera, push, biometrics, geolocation, NFC, payments, AdMob, sensors, and secure storage, all called from PHP.

NativeBlade::camera()

Cloud builds

The Portal compiles, signs, and submits your iOS and Android builds in the cloud. No Xcode, no Android Studio, no local NDK.

app.nativeblade.dev

Native shell UI

Bars, sheets, and page transitions that render above the webview and survive navigation, driven from your components.

shell components

Realtime

WebSockets over Reverb or Pusher, delivered straight to the device with public, private, and presence channels.

broadcast to native

SDK versions

Versioned releases with a clear upgrade path. Move to the next SDK with a single command and rebuild.

nativeblade:update

Shared state

A live state bridge keeps PHP and the native layer in sync, so setState in a component reaches the shell instantly.

NativeBlade::setState()
NativeBlade Studio

The easiest way in, right on your desktop.

Studio scaffolds, previews, and builds your app locally, with an AI pair that writes real NativeBlade for you. It runs on your own Claude Code, so there are no API keys to manage and nothing metered.

Read the guide Desktop · Preview
The Portal

Build and ship without a Mac.

Push your Laravel repo and the Portal does the rest. It runs on a dedicated build farm, so your laptop never compiles a thing and never waits in line.

How it works

Your stack, running on the device.

NativeBlade pairs a real PHP runtime with a native shell, so the code you already know becomes the app your users install.

PHP runs on device

php-wasm executes Laravel locally and Livewire renders the UI. It works offline, with no server hop for every interaction.

Native where it counts

A Tauri shell gives you real windows, camera, push, biometrics, deep links, and a signed build ready for the stores.

One codebase, every platform

The same Blade views ship to iOS, Android, macOS, Windows, and Linux, versioned by SDK so upgrades stay predictable.

Showcase

Real apps, in real stores.

Shipped with NativeBlade and live on both platforms today, including the Portal itself.

Petabit app icon
Petabit
built with NativeBlade

A production Laravel and Livewire app shipped to iOS and Android from a single codebase.

NativeBlade app icon
NativeBlade Portal
built with NativeBlade

The build portal, dogfooded. The app that ships your apps is itself a NativeBlade app.