
Em um mundo dominado por JavaScript, Swift, Kotlin e frameworks pesados, o NativePHP surge como uma lufada de inovação para desenvolvedores PHP. Esta ferramenta permite criar aplicações nativas para desktop e mobile com a mesma linguagem e ferramentas que você já domina — sem sair do seu ecossistema PHP/Laravel. Se o seu sonho é transformar seus projetos web em apps nativos de verdade, esse tutorial é para você!
O que é o NativePHP?
O NativePHP é um framework moderno que combina:
- Classes simples e intuitivas, para acessar recursos do sistema operacional de forma nativa (como janelas, menus, notificações, arquivos e mais).
- Ferramentas de construção e empacotamento — como Electron, bastante difundido e com suporte amplo, ou Tauri, que se destaca por gerar aplicações desktop mais leves e com menor consumo de memória — integradas de forma transparente.
- Um runtime PHP estático, que embute o interpretador PHP dentro do app, permitindo distribuí-lo sem exigir PHP instalado no usuário.
Você continua escrevendo código em PHP (Laravel ou puro), Blade, Inertia, Livewire, etc., e recebe uma aplicação nativa cross-platform pronta para uso.
Requisitos de Utilização(desktop)
Antes de começar, assegure-se de ter instalado no seu ambiente:
- PHP 8.1+
- Composer
- Node.js e npm (para construção de assets)
- Laravel (v10+ recomendado)
- Git
- Dependência ao Electron/Tauri
Tutorial de Uso (desktop)
1. Criar (ou usar) um projeto Laravel
Abra seu terminal e crie um novo projeto Laravel (ou use um já existente):
composer create-project laravel/laravel meu-app-native
cd meu-app-native
Verifique se o servidor está funcionando:
php artisan serve
Se acessar http://localhost:8000, verá o Laravel rodando normalmente.
2. Instalar o NativePHP (desktop via Electron)
Adicione o pacote do NativePHP:
composer require nativephp/electron
Depois rode o comando de instalação:
php artisan native:install
Esse comando vai:
- Preparar o boilerplate do Electron.
- Criar a pasta
.nativephp/com configurações do app. - Adicionar dependências necessárias.
3. Executar e testar a aplicação
Agora, basta rodar:
php artisan native:serve
O Laravel será iniciado em segundo plano e abrirá uma janela nativa usando Electron, exibindo sua aplicação. Você não está mais no navegador: é um aplicativo desktop real.
4. Criar uma janela personalizada
O NativePHP permite controlar a forma como sua janela abre.
Edite o arquivo 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. Adicionar um menu nativo
Você pode criar menus semelhantes aos de qualquer app desktop:
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();
}
Agora seu app terá um menu “Arquivo” com opções que podem disparar eventos no Laravel.
6. Enviando notificações nativas
Notificações do sistema podem ser exibidas com uma única linha:
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();
Isso dispara uma notificação no sistema operacional, igual a qualquer outro aplicativo.
7. Distribuindo sua aplicação
Depois de desenvolver, você pode empacotar sua aplicação:
php artisan native:build
Esse comando gera um executável para o sistema operacional (Windows, macOS ou Linux), com PHP embutido.
Você pode distribuir esse arquivo para usuários finais sem exigir instalação de PHP ou Composer.
NativePHP no Mobile (iOS e Android)
Além do suporte a aplicações desktop, o NativePHP também permite criar aplicativos móveis nativos, aproveitando o mesmo código PHP do seu backend Laravel.
Isso é possível porque o NativePHP fornece um runtime PHP embarcado dentro de um app Swift (iOS) ou Kotlin (Android). Assim, o PHP roda diretamente no dispositivo, sem necessidade de internet ou servidor remoto — ideal para apps offline-first, com total acesso às APIs do sistema.
Requisitos para mobile
- macOS + Xcode (para iOS)
- Android Studio + SDK (para Android)
- PHP 8.1+
- Composer
- Node.js / npm
- Conta de desenvolvedor na Apple Developer (para distribuir no iOS)
- Conta de desenvolvedor no Google Play Console (para distribuir no Android)
Passo a passo para criar um app mobile com NativePHP
1. Instalar o CLI do NativePHP Mobile
No seu projeto Laravel, rode:
composer require nativephp/mobile
Depois inicialize o ambiente mobile:
php artisan native:mobile:install
Isso criará a estrutura necessária para gerar apps iOS/Android.
2. Criar um novo projeto mobile
Execute o comando:
php artisan native:mobile:init
Esse comando gera um projeto wrapper:
- Para iOS, um projeto Swift com PHP embarcado.
- Para Android, um projeto Kotlin com PHP embarcado.
Esses projetos ficam dentro da pasta mobile/ e já vêm configurados para rodar seu app Laravel.
3. Rodar o app no emulador ou dispositivo
Para iOS:
php artisan native:mobile:serve ios
Isso abrirá o Simulator do Xcode com seu app.
Para Android:
php artisan native:mobile:serve android
Isso abrirá o Emulador do Android Studio ou executará no dispositivo conectado via USB.
4. Usando APIs móveis
Assim como no desktop, você pode acessar funcionalidades nativas do celular:
use Native\Laravel\Facades\Camera;
$photo = Camera::capture();
$photo->save(storage_path('app/public/foto.jpg'));
Exemplo – Notificações push locais:
use Native\Laravel\Facades\Notification;
Notification::new()
->title('Bem-vindo!')
->message('Você abriu o app NativePHP no celular 🚀')
->show();
Exemplo – Biometria (Face ID / Impressão Digital):
use Native\Laravel\Facades\Biometrics;
if (Biometrics::check()) {
echo "Usuário autenticado com biometria!";
}
5. Empacotando e distribuindo
Quando terminar o desenvolvimento, você pode gerar os builds para distribuição:
Para iOS:
php artisan native:mobile:build ios
Para Android:
php artisan native:mobile:build android
Esses comandos geram um .ipa (iOS) ou .apk/.aab (Android), prontos para serem enviados às lojas oficiais.
Conclusão
O NativePHP abre uma nova fronteira para quem já domina PHP e Laravel: criar aplicações nativas, com acesso a recursos do sistema e distribuição como executáveis reais.
- Se antes era necessário aprender Swift, Java ou recorrer a frameworks pesados, agora basta continuar no mundo PHP.
- O fluxo de desenvolvimento é simples: instalar, criar janelas, interagir com APIs nativas e empacotar.
- A curva de aprendizado é baixa e os benefícios, enormes, principalmente para quem deseja reutilizar código de aplicações web já existentes.
Se você sempre quis transformar seu projeto web em um aplicativo multiplataforma, o NativePHP é uma ferramenta que merece estar no seu radar.