DEV Community

Lithe
Lithe

Posted on

Organizando Suas Rotas de Forma Modular e Automática no Lithe

A organização das rotas em uma aplicação pode ser um desafio, especialmente quando o número de páginas cresce. Pensando nisso, no Lithe, você pode organizar suas rotas de maneira mais limpa e modular usando o método set('routes', ...). Com ele, o processo de registro de rotas fica mais simples, permitindo que você se concentre na lógica da sua aplicação, enquanto o sistema cuida de tudo automaticamente.

Como Funciona?

Quando você utiliza set('routes', ...) no Lithe, o sistema localiza e carrega automaticamente todos os arquivos PHP dentro da pasta de rotas (incluindo subpastas). Cada arquivo de rota será mapeado com base na sua estrutura, criando rotas com caminhos específicos.

Por exemplo:

  • Se você tiver um arquivo cart.php, a rota será /cart.
  • Se tiver um arquivo admin/dashboard.php, a rota será /admin/dashboard.

Atenção ao Usar Subpastas

Dentro da estrutura de rotas no Lithe, o arquivo index.php é sempre interpretado como a rota principal de uma pasta. Ou seja, se você tiver um arquivo index.php dentro da pasta de rotas, ele será mapeado para a rota /, que representa a raiz da aplicação.

No entanto, se você usar subpastas como panel/index.php, o sistema não irá mapear para a rota /panel, mas para /panel/index. Para garantir que a rota seja mapeada corretamente para /panel, basta nomear o arquivo como panel.php, assim:

  • index.php → mapeia para a rota /
  • panel.php → mapeia para a rota /panel

Essa abordagem ajuda a evitar sobrecarga de rotas e deixa a estrutura de arquivos muito mais intuitiva.

Estrutura de Diretórios

Aqui está um exemplo de como a estrutura de diretórios pode ficar:

/routes
    cart.php
    checkout.php
    /admin
        dashboard.php
        users.php
Enter fullscreen mode Exit fullscreen mode

Como Definir as Rotas

Em cada arquivo de rota, você pode usar o estilo de código que preferir, seja com sintaxe funcional ou sintaxe clássica.

Exemplo de cart.php:

get('/', function ($req, $res) { 
  $res->send('Carrinho'); 
});
Enter fullscreen mode Exit fullscreen mode

Exemplo de admin/dashboard.php:

$router->get('/', function ($req, $res) { 
  $res->send('Painel Administrativo'); 
});
Enter fullscreen mode Exit fullscreen mode

Configuração da Aplicação

Para configurar o caminho das suas rotas e habilitar o carregamento automático no Lithe, basta adicionar a seguinte linha de código na sua aplicação:

$app->set('routes', __DIR__ . '/routes');  // Define o caminho e carrega rotas automaticamente
Enter fullscreen mode Exit fullscreen mode

Com essa configuração, o sistema automaticamente irá localizar e carregar todas as rotas definidas, simplificando o processo e garantindo uma organização muito mais eficiente da sua aplicação no Lithe.


Essa organização torna sua aplicação mais escalável e fácil de manter, permitindo que você se concentre no que realmente importa ao desenvolver no Lithe!

Top comments (0)