PHP
Sin categorizar

NativePHP: ¿Qué es y cómo usarlo?

Por Igor Amador
6 de septiembre de 2025
5 min min de lectura
NativePHP: ¿Qué es y cómo usarlo?

En un mundo dominado por JavaScript, Swift, Kotlin y frameworks pesados, NativePHP surge como una bocanada de innovación para desarrolladores PHP. Esta herramienta permite crear aplicaciones nativas para escritorio y móvil con el mismo lenguaje y herramientas que ya dominas, sin salir de tu ecosistema PHP/Laravel. Si tu sueño es transformar tus proyectos web en apps nativas de verdad, ¡este tutorial es para ti!


¿Qué es NativePHP?

NativePHP es un framework moderno que combina:

  1. Clases simples e intuitivas, para acceder a recursos del sistema operativo de forma nativa (como ventanas, menús, notificaciones, archivos y más).
  2. Herramientas de construcción y empaquetado, como Electron, bastante difundido y con soporte amplio, o Tauri, que se destaca por generar aplicaciones de escritorio más ligeras y con menor consumo de memoria, integradas de forma transparente.
  3. Un runtime PHP estático, que integra el intérprete PHP dentro de la app, permitiendo distribuirlo sin exigir PHP instalado en el usuario.

Tú sigues escribiendo código en PHP (Laravel o puro), Blade, Inertia, Livewire, etc., y recibes una aplicación nativa multiplataforma lista para usar.

Requisitos de Utilización (escritorio)

Antes de empezar, asegúrate de tener instalado en tu entorno:

  • PHP 8.1+
  • Composer
  • Node.js y npm (para construcción de assets)
  • Laravel (v10+ recomendado)
  • Git
  • Dependencia a Electron/Tauri

Tutorial de Uso (escritorio)

1. Crear (o usar) un proyecto Laravel

Abre tu terminal y crea un nuevo proyecto Laravel (o usa uno ya existente):

composer create-project laravel/laravel meu-app-native

cd meu-app-native

Verifica si el servidor está funcionando:

php artisan serve

Si accedes a http://localhost:8000, verás Laravel funcionando normalmente.

2. Instalar NativePHP (escritorio vía Electron)

Añade el paquete de NativePHP:

composer require nativephp/electron

Después, ejecuta el comando de instalación:

php artisan native:install

Este comando va a:

  • Preparar el boilerplate de Electron.
  • Crear la carpeta .nativephp/ con configuraciones de la app.
  • Añadir dependencias necesarias.

3. Ejecutar y probar la aplicación

Ahora, basta con ejecutar:

php artisan native:serve

Laravel se iniciará en segundo plano y abrirá una ventana nativa usando Electron, mostrando tu aplicación. Ya no estás en el navegador: es una aplicación de escritorio real.

4. Crear una ventana personalizada

NativePHP permite controlar la forma en que se abre tu ventana.
Edita el archivo app/Providers/NativeAppServiceProvider.php:

use Native\Laravel\Facades\Window;

public function boot()
{
Window::open()
->title('Meu Primeiro App Nativo')
->width(1024)
->height(768)
->resizable()
->centerOnScreen();
}

5. Añadir un menú nativo

Puedes crear menús similares a los de cualquier app de escritorio:

use Native\Laravel\Facades\Menu;
use Native\Laravel\Menu\MenuItem;
public function boot()
{
$menu = Menu::new()
->appMenu()
->submenu('Arquivo', [
MenuItem::label('Abrir')->event('arquivo.abrir'),
MenuItem::label('Salvar')->event('arquivo.salvar'),
MenuItem::label('Sair')->quit(),
]);
$menu->register();
}

Ahora tu app tendrá un menú “Archivo” con opciones que pueden disparar eventos en Laravel.

6. Enviando notificaciones nativas

Las notificaciones del sistema pueden mostrarse con una única línea:

use Native\Laravel\Facades\Notification;
Notification::new()
->title('Sucesso!')
->message('Seu app nativo em PHP está rodando.')
->show();Notification::new()
->title('Sucesso!')
->message('Seu app nativo em PHP está rodando.')
->show();

Esto dispara una notificación en el sistema operativo, igual que cualquier otra aplicación.

7. Distribuyendo tu aplicación

Después de desarrollar, puedes empaquetar tu aplicación:

php artisan native:build

Este comando genera un ejecutable para el sistema operativo (Windows, macOS o Linux), con PHP integrado.
Puedes distribuir este archivo a usuarios finales sin exigir la instalación de PHP o Composer.

NativePHP en Mobile (iOS y Android)

Además del soporte para aplicaciones de escritorio, NativePHP también permite crear aplicaciones móviles nativas, aprovechando el mismo código PHP de tu backend Laravel.

Esto es posible porque NativePHP proporciona un runtime PHP integrado dentro de una app Swift (iOS) o Kotlin (Android). Así, PHP se ejecuta directamente en el dispositivo, sin necesidad de internet o servidor remoto, ideal para apps offline-first, con total acceso a las APIs del sistema.

Requisitos para mobile

  • macOS + Xcode (para iOS)
  • Android Studio + SDK (para Android)
  • PHP 8.1+
  • Composer
  • Node.js / npm
  • Cuenta de desarrollador en Apple Developer (para distribuir en iOS)
  • Cuenta de desarrollador en Google Play Console (para distribuir en Android)

Paso a paso para crear una app mobile con NativePHP

1. Instalar el CLI de NativePHP Mobile

En tu proyecto Laravel, ejecuta:

composer require nativephp/mobile

Después, inicializa el entorno mobile:

php artisan native:mobile:install

Esto creará la estructura necesaria para generar apps iOS/Android.

2. Crear un nuevo proyecto mobile

Ejecuta el comando:

php artisan native:mobile:init

Este comando genera un proyecto wrapper:

  • Para iOS, un proyecto Swift con PHP integrado.
  • Para Android, un proyecto Kotlin con PHP integrado.

Estos proyectos se encuentran dentro de la carpeta mobile/ y ya vienen configurados para ejecutar tu app Laravel.

3. Ejecutar la app en el emulador o dispositivo

Para iOS:

php artisan native:mobile:serve ios

Esto abrirá el Simulator de Xcode con tu app.

Para Android:

php artisan native:mobile:serve android

Esto abrirá el Emulador de Android Studio o se ejecutará en el dispositivo conectado vía USB.

4. Usando APIs móviles

Así como en el escritorio, puedes acceder a funcionalidades nativas del celular:

use Native\Laravel\Facades\Camera;
$photo = Camera::capture();
$photo->save(storage_path('app/public/foto.jpg'));

Ejemplo – Notificaciones push locales:

use Native\Laravel\Facades\Notification;
Notification::new()
->title('Bem-vindo!')
->message('Você abriu o app NativePHP no celular 🚀')
->show();

Ejemplo – Biometría (Face ID / Impresión Digital):

use Native\Laravel\Facades\Biometrics;
if (Biometrics::check()) {
echo "Usuário autenticado com biometria!";
}

5. Empaquetando y distribuyendo

Cuando termines el desarrollo, puedes generar los builds para distribución:

Para iOS:

php artisan native:mobile:build ios

Para Android:

php artisan native:mobile:build android

Estos comandos generan un .ipa (iOS) o .apk/.aab (Android), listos para ser enviados a las tiendas oficiales.

Conclusión

NativePHP abre una nueva frontera para quien ya domina PHP y Laravel: crear aplicaciones nativas, con acceso a recursos del sistema y distribución como ejecutables reales.

  • Si antes era necesario aprender Swift, Java o recurrir a frameworks pesados, ahora basta con continuar en el mundo PHP.
  • El flujo de desarrollo es simple: instalar, crear ventanas, interactuar con APIs nativas y empaquetar.
  • La curva de aprendizaje es baja y los beneficios, enormes, principalmente para quien desea reutilizar código de aplicaciones web ya existentes.

Si siempre quisiste transformar tu proyecto web en una aplicación multiplataforma, NativePHP es una herramienta que merece estar en tu radar.

Artículos Relacionados