Instalação
Conheça o Laravel
O Laravel é um framework para aplicações web com sintaxe expressiva e elegante. O laravel fornece uma estrutura e um ponto de partida para a criação do seu aplicativo, permitindo que você se concentre em criar algo incrível enquanto ele cuida dos detalhes.
O Laravel se esforça para proporcionar uma experiência incrível ao desenvolvedor e, ao mesmo tempo, oferece recursos avançados, como injeção completa de dependência, uma camada expressiva de abstração de banco de dados, filas e cron jobs, testes unitários e de integração e muito mais.
Não importa se você é novato em frameworks Web PHP ou se tem anos de experiência, o Laravel é uma estrutura que pode crescer com você. Nós o ajudaremos a dar os primeiros passos como desenvolvedor da Web ou lhe daremos um impulso à medida que você levar sua experiência para o próximo nível. Mal podemos esperar para ver o que você vai construir.
Dica
Novo no Laravel? Confira o Laravel Bootcamp para um tour prático do framework enquanto te guiamos na construção da sua primeira aplicação Laravel.
Por que Laravel?
Há uma variedade de frameworks disponíveis para a criação de aplicações Web. No entanto, acreditamos que o Laravel é a melhor opção para criar aplicativos Web modernos.
Um Framework ProgressivoNós gostamos de chamar o Laravel de um framework "progressivo". Com isso, queremos dizer que o Laravel cresce com você. Se você está dando os primeiros passos no desenvolvimento web, a vasta documentação, guias e tutoriais em vídeo do Laravel ajudará você a aprender sem se sentir sobrecarregado.
Caso você seja um desenvolvedor sênior, o Laravel oferece ferramentas robustas para injeção de dependência, testes unitários, filas, eventos em tempo real e muito mais. O Laravel é perfeito para a construção de aplicações web e pronto para lidar com cargas de trabalho empresariais.
Um Framework EscalávelLaravel é incrivelmente escalável. Graças à natureza amigável à escalabilidade do PHP e ao suporte integrado do Laravel para sistemas de cache distribuídos rápidos, como o Redis, a escalabilidade horizontal com o Laravel é muito fácil. Na verdade, as aplicações Laravel foram facilmente escaladas para lidar com centenas de milhões de solicitações por mês.
Precisa de escalabilidade extrema? Plataformas como o Laravel Vapor permitem que você execute sua aplicação Laravel em uma escala quase ilimitada na mais recente tecnologia serverless da AWS.
Um Framework de ComunidadeO Laravel combina os melhores pacotes do ecossistema PHP para oferecer o framework mais robusto e amigável para desenvolvedores. Além disso, milhares de desenvolvedores talentosos de todo o mundo contribuíram para o framework. Quem sabe, talvez você até se torne um contribuidor do Laravel.
Criando uma aplicação Laravel
Instalando PHP e o Laravel Installer
Antes de criar sua primeira aplicação Laravel, certifique-se de que sua máquina local tenha PHP, Composer e o instalador Laravel instalados. Além disso, você deve instalar Node e NPM ou Bun para que possa compilar os assets front-end da sua aplicação.
Se você não tiver o PHP e o Composer instalados em sua máquina local, os seguintes comandos instalarão o PHP, o Composer e o instalador Laravel no macOS, Windows ou Linux:
/bin/bash -c "$(curl -fsSL https://php.new/install/mac)"
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://php.new/install/windows'))
/bin/bash -c "$(curl -fsSL https://php.new/install/linux)"
Após executar um dos comandos acima, você deve reiniciar sua sessão no terminal. Para atualizar o PHP, Composer e o instalador Laravel após instalá-los via php.new, você pode executar o comando novamente no terminal.
Se você já tiver o PHP e o Composer instalados, poderá instalar o instalador Laravel via Composer:
composer global require laravel/installer
Dica
Para uma experiência de instalação e gerenciamento PHP totalmente funcional e gráfica, confira o Laravel Herd.
Criando uma nova aplicação Laravel
Após instalar o PHP, Composer e o instalador Laravel, você está pronto para criar uma nova aplicação Laravel. O instalador Laravel solicitará que você selecione seu framework de teste, banco de dados e starter kit:
laravel new meu-app
Uma vez que a aplicação foi criada, você pode iniciar o servidor de desenvolvimento local do Laravel, o worker de filas e o servidor de desenvolvimento Vite usando o script dev
do Composer (Laravel 11.x):
cd meu-app # Navegue até o diretório da sua aplicação
npm install && npm run build # Instale as dependências do Node e compile os assets
composer dev
Uma vez que você tenha iniciado o servidor de desenvolvimento, sua aplicação estará acessível em seu navegador web em http://localhost:8000. Em seguida, você está pronto para começar a dar seus próximos passos no ecossistema Laravel. Claro, você também pode querer configurar um banco de dados.
Dica
Se você deseja um ponto de partida ao desenvolver sua aplicação Laravel, considere usar um dos nossos starter kits. Os starter kits do Laravel fornecem um esqueleto com autenticação para sua nova aplicação Laravel.
Configuração Inicial
Todas as configurações do Laravel são armazenadas no diretório config
. Cada opção é documentada, então sinta-se à vontade para olhar os arquivos e se familiarizar com as opções disponíveis para você.
O laravel não precisa de quase nenhuma configuração adicional. Você está livre para começar a desenvolver! No entanto, você pode querer revisar o arquivo config/app.php
e sua documentação. Ele contém várias opções, como fuso horário (timezone) e localidade (locale), que você pode querer alterar de acordo com a sua aplicação.
Configuração Baseada em Ambiente
Como muitas das opções de configuração do Laravel podem variar dependendo se sua aplicação está rodando em sua máquina local ou em um servidor web de produção, muitos valores de configuração importantes são definidos usando o arquivo .env
que existe na raiz da sua aplicação.
Seu arquivo .env
não deve ser commitado no controle de versão de sua aplicação, já que cada desenvolvedor/servidor que usa sua aplicação pode requerer uma configuração de ambiente diferente. Além disso, isso seria um risco de segurança no caso de um invasor ganhar acesso ao seu repositório de controle de versão, já que quaisquer credenciais sensíveis seriam expostas.
Dica
Para mais informações sobre o arquivo .env
e configuração baseada em ambiente, confira a documentação completa de configuração.
Banco de Dados e Migrações
Agora que você criou sua aplicação Laravel, provavelmente deseja armazenar alguns dados em um banco de dados. Por padrão, o arquivo de configuração .env
de sua aplicação especifica que o Laravel interagirá com um banco de dados SQLite.
Durante a criação da aplicação, o Laravel criou um arquivo database/database.sqlite
para você e executou as migrações necessárias para criar as tabelas do banco de dados da aplicação.
Se você preferir usar outro driver de banco de dados, como MySQL ou PostgreSQL, você pode atualizar o arquivo de configuração .env
para usar o banco de dados apropriado. Por exemplo, se você deseja usar o MySQL, atualize as variáveis DB\_\*
do arquivo de configuração .env
da seguinte forma:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
Se você optar por usar um banco de dados diferente do SQLite, você precisará criar o banco de dados e executar as migrações do banco de dados de sua aplicação:
php artisan migrate
Dica
Se você estiver desenvolvendo no macOS ou Windows e precisar instalar o MySQL, PostgreSQL ou Redis localmente, considere usar o Herd Pro.
Configuração de Diretórios
O Laravel deve sempre ser servido a partir do diretório raiz do "diretório web" configurado para o seu servidor web. Você não deve tentar servir uma aplicação Laravel a partir de um subdiretório do "diretório web". Tentar fazer isso poderia expor arquivos sensíveis presentes em sua aplicação.
Instalação Local Usando o Herd
Laravel Herd é um ambiente de desenvolvimento Laravel e PHP nativo e extremamente rápido para macOS e Windows. O Herd inclui tudo o que você precisa para começar a desenvolver com Laravel, incluindo PHP e Nginx.
Depois de instalar o Herd, você está pronto para começar a desenvolver com Laravel. O Herd inclui ferramentas de linha de comando para php
, composer
, laravel
, expose
, node
, npm
e nvm
.
Dica
O Herd Pro aprimora o Herd com recursos poderosos adicionais, como a capacidade de criar e gerenciar bancos de dados MySQL, Postgres e Redis locais, bem como visualização de e-mails locais e monitoramento de logs.
Herd no macOS
Se você desenvolve no macOS, você pode baixar o instalador do Herd. O instalador baixa automaticamente a versão mais recente do PHP e configura seu Mac para sempre executar o Nginx em segundo plano.
O Herd para macOS usa o dnsmasq para suportar diretórios "estacionados". Qualquer aplicação Laravel em um diretório estacionado será automaticamente servida pelo Herd. Por padrão, o Herd cria um diretório estacionado em ~/Herd e você pode acessar qualquer aplicação Laravel neste diretório no domínio .test usando o nome do diretório.
Após instalar o Herd, a maneira mais rápida de criar uma nova aplicação Laravel é usando o CLI do Laravel, que é empacotado com o Herd:
cd ~/Herd
laravel new meu-app
cd meu-app
herd open
Obviamente, você sempre pode gerenciar seus diretórios e outras configurações PHP através da interface do Herd, que pode ser aberta a partir do menu do Herd na bandeja do sistema.
Você pode aprender mais sobre o Herd conferindo a documentação do Herd.
Herd no Windows
Você pode baixar o instalador do Windows para o Herd no site do Herd. Após a instalação, você pode iniciar o Herd para completar o processo de integração e acessar a interface do Herd pela primeira vez.
A interface do Herd é acessível clicando com o botão esquerdo no ícone da bandeja do sistema do Herd. Um clique com o botão direito abre o menu rápido com acesso a todas as ferramentas que você precisa diariamente.
Durante a instalação, o Herd cria um diretório "estacionado" em seu diretório pessoal em %USERPROFILE%\Herd
. Qualquer aplicação Laravel em um diretório estacionado será automaticamente servida pelo Herd, e você pode acessar qualquer aplicação Laravel neste diretório no domínio .test
usando o nome do diretório.
Após instalar o Herd, a maneira mais rápida de criar uma nova aplicação Laravel é usando o CLI do Laravel, que é empacotado com o Herd. Para começar, abra o Powershell e execute os seguintes comandos:
cd ~\Herd
laravel new my-app
cd my-app
herd open
Você pode aprender mais sobre o Herd conferindo a documentação do Herd.
Instalação utilizando o Docker/Sail
Queremos que seja o mais fácil possível começar com o Laravel, independentemente do seu sistema operacional preferido. Portanto, existem várias opções para desenvolver e executar uma aplicação Laravel em sua máquina local. Embora você possa desejar explorar essas opções em um momento posterior, o Laravel fornece o Sail, uma solução integrada para executar sua aplicação Laravel usando o Docker.
O Docker é uma ferramenta para executar serviços em "containers" pequenos e leves que não interferem com o software ou configuração instalados em sua máquina local. Isso significa que você não precisa se preocupar em configurar ou definir ferramentas de desenvolvimento complicadas, como servidores web e bancos de dados em sua máquina local. Para começar, você só precisa instalar o Docker Desktop.
O Laravel Sail é uma CLI leve para interagir com a configuração Docker padrão do Laravel. O Sail fornece um ótimo ponto de partida para construir uma aplicação Laravel usando PHP, MySQL e Redis sem exigir experiência prévia com Docker.
Dica
Já é um especialista em Docker? Não se preocupe! Tudo sobre o Sail pode ser personalizado usando o arquivo docker-compose.yml
incluído com o Laravel.
Sail no macOS
Se você está desenvolvendo em um Mac e o Docker Desktop já está instalado, você pode usar um simples comando de terminal para criar uma nova aplicação Laravel. Por exemplo, para criar uma nova aplicação Laravel em um diretório chamado "meu-app", você pode executar o seguinte comando em seu terminal:
curl -s "https://laravel.build/meu-app" | bash
Obviamente, você pode alterar "meu-app" nesta URL para qualquer nome que você preferir - apenas certifique-se de que o nome da aplicação contenha apenas caracteres alfanuméricos, traços e sublinhados. O diretório da aplicação Laravel será criado dentro do diretório em que você executar o comando.
A instalação do Sail pode levar vários minutos enquanto os contêineres são construídos em sua máquina local.
Após a criação da aplicação, você pode navegar até o diretório da aplicação e iniciar o Laravel Sail. O Laravel Sail fornece uma interface de linha de comando simples para interagir com a configuração Docker padrão do Laravel:
cd meu-app
./vendor/bin/sail up
Depois que os contêineres do Docker forem iniciados, você deve executar as migrações do banco de dados:
./vendor/bin/sail artisan migrate
Enfim, você pode acessar a aplicação em seu navegador web em: http://localhost.
Sail no Windows
Antes de criarmos uma nova aplicação Laravel em sua máquina Windows, certifique-se de instalar o Docker Desktop. Em seguida, você deve garantir que o Windows Subsystem for Linux 2 (WSL2) esteja instalado e habilitado. O WSL permite que você execute executáveis binários do Linux nativamente no Windows. Informações sobre como instalar e habilitar o WSL2 podem ser encontradas na documentação do ambiente de desenvolvimento da Microsoft.
Dica
Após instalar e habilitar o WSL2, você deve garantir que o Docker Desktop esteja configurado para usar o backend WSL2.
Agora, você está pronto para criar sua primeira aplicação Laravel. Inicie o Windows Terminal e inicie uma nova sessão de terminal para o seu sistema operacional Linux WSL2. Em seguida, você pode usar um simples comando de terminal para criar uma nova aplicação Laravel. Por exemplo, para criar uma nova aplicação Laravel em um diretório chamado "meu-app", você pode executar o seguinte comando em seu terminal:
curl -s https://laravel.build/meu-app | bash
Obviamente, você pode alterar "meu-app" nesta URL para qualquer nome que você preferir - apenas certifique-se de que o nome da aplicação contenha apenas caracteres alfanuméricos, traços e sublinhados. O diretório da aplicação Laravel será criado dentro do diretório em que você executar o comando.
A instalação do Sail pode levar vários minutos enquanto os contêineres são construídos em sua máquina local.
Após a criação da aplicação, você pode navegar até o diretório da aplicação e iniciar o Laravel Sail. O Sail fornece uma interface de linha de comando simples para interagir com a configuração Docker padrão do Laravel:
cd meu-app
./vendor/bin/sail up
Depois que os contêineres do Docker forem iniciados, você deve executar as migrações do banco de dados:
./vendor/bin/sail artisan migrate
Dica
Para continuar aprendendo mais sobre o Laravel Sail, revise sua documentação completa.
Desenvolvendo Dentro do WSL2
Obviamente, você vai precisar ser capaz de modificar os arquivos da aplicação Laravel que foram criados dentro da sua instalação WSL2. Para isso, recomendamos o uso do editor Visual Studio Code da Microsoft e sua extensão de primeira parte para Desenvolvimento Remoto.
Uma vez que essas ferramentas estejam instaladas, você pode abrir qualquer aplicação Laravel executando o comando code .
a partir do diretório raiz da sua aplicação usando o Windows Terminal.
Sail no Linux
Se você está desenvolvendo no Linux e o Docker Compose já está instalado, você pode usar um simples comando de terminal para criar uma nova aplicação Laravel.
Primeiro, se você estiver usando o Docker Desktop para Linux, você deve executar o seguinte comando. Se você não estiver usando o Docker Desktop para Linux, você pode pular esta etapa:
docker context use default
Em seguida, para criar uma nova aplicação Laravel em um diretório chamado "meu-app", você pode executar o seguinte comando em seu terminal:
curl -s https://laravel.build/meu-app | bash
Obviamente, você pode alterar "meu-app" nesta URL para qualquer nome que você preferir - apenas certifique-se de que o nome da aplicação contenha apenas caracteres alfanuméricos, traços e sublinhados. O diretório da aplicação Laravel será criado dentro do diretório em que você executar o comando.
A instalação do Sail pode levar vários minutos enquanto os contêineres são construídos em sua máquina local.
Após a criação da aplicação, você pode navegar até o diretório da aplicação e iniciar o Laravel Sail. O Sail fornece uma interface de linha de comando simples para interagir com a configuração Docker padrão do Laravel:
cd meu-app
./vendor/bin/sail up
Uma vez que os contêineres Docker da aplicação foram iniciados, você deve executar as migrações do banco de dados:
./vendor/bin/sail artisan migrate
Enfim, você pode acessar a aplicação em seu navegador web em: http://localhost.
Dica
Para continuar aprendendo mais sobre o Laravel Sail, revise sua documentação completa.
Escolhendo os Serviços no Sail
Quando você cria uma nova aplicação Laravel via Sail, você pode usar a variável de consulta with
para escolher quais serviços devem ser configurados no arquivo docker-compose.yml
da sua nova aplicação. Os serviços disponíveis incluem mysql
, pgsql
, mariadb
, redis
, memcached
, meilisearch
, typesense
, minio
, selenium
e mailpit
:
curl -s "https://laravel.build/meu-app?with=mysql,redis" | bash
Se você não especificar quais serviços deseja configurar, uma stack padrão de mysql
, redis
, meilisearch
, mailpit
e selenium
será configurada.
Você pode instruir o Sail a instalar um Devcontainer padrão adicionando o parâmetro devcontainer
à URL:
curl -s "https://laravel.build/meu-app?with=mysql,redis&devcontainer" | bash
Suporte a IDE
Você é livre para usar qualquer editor de código que desejar ao desenvolver aplicações Laravel; no entanto, o PhpStorm oferece suporte extensivo ao Laravel e seu ecossistema, incluindo o Laravel Pint.
Além disso, o plugin Laravel Idea para PhpStorm, mantido pela comunidade, oferece uma variedade de aprimoramentos úteis para o IDE.
Próximos Passos
Agora que você criou sua primeira aplicação Laravel, você pode estar se perguntando o que aprender a seguir. Primeiramente, recomendamos fortemente que você se familiarize com como o Laravel funciona lendo a seguinte documentação:
Como você deseja usar o Laravel também ditará os próximos passos em sua jornada. Existem várias maneiras de usar o Laravel, e exploraremos dois casos de uso principais para o framework abaixo.
Dica
Novo no Laravel? Confira o Laravel Bootcamp para um tour prático do framework enquanto te guiamos na construção da sua primeira aplicação Laravel.
Laravel o Framework Full-Stack
O laravel pode servir como um framework full-stack. Por "full stack" framework, queremos dizer que você vai usar o Laravel para rotear as requisições para sua aplicação e renderizar seu frontend via Templates Blade ou uma tecnologia híbrida de SPA como Inertia. Esta é a maneira mais comum de usar o framework Laravel e, em nossa opinião, a maneira mais produtiva de usar o Laravel.
Se você planeja usar o Laravel dessa maneira, você pode querer conferir nossa documentação sobre desenvolvimento frontend, roteamento, views ou o Eloquent ORM. Além disso, você pode se interessar em aprender sobre pacotes da comunidade como Livewire e Inertia. Esses pacotes permitem que você use o Laravel como um framework full-stack enquanto desfruta de muitos dos benefícios de UI fornecidos por uma SPA.
Se você estiver usando o Laravel como um framework full-stack, também recomendamos fortemente que você aprenda a compilar o CSS e o JavaScript da sua aplicação usando o Vite.
Dica
Se você deseja um ponto de partida ao desenvolver sua aplicação Laravel, considere usar um dos nossos Starter Kits. Os starter kits do Laravel fornecem um esqueleto com autenticação para sua nova aplicação Laravel.
Laravel o Backend de API
O Laravel também pode servir como um backend de API para uma aplicação de página única JavaScript ou aplicativo móvel. Por exemplo, você pode usar o Laravel como um backend de API para sua aplicação Next.js. Neste contexto, você pode usar o Laravel para fornecer autenticação e armazenamento/recuperação de dados para sua aplicação, enquanto também aproveita os poderosos serviços do Laravel, como filas, e-mails, notificações e muito mais.
Se você planeja usar o Laravel dessa maneira, você pode querer conferir nossa documentação sobre roteamento, Eloquent ORM e migrações.
Dica
Precisa de um ponto de partida para estruturar seu backend Laravel e frontend Next.js? O Laravel Breeze oferece um stack de API bem como uma implementação frontend Next.js para que você possa começar em minutos.