ovalves / selene
simple microframework
Installs: 48
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- php: ^8.0
- fig/http-message-util: ^1.1.2
- filp/whoops: 2.13.0
- psr/container: ^1.0
- psr/http-message: ^1.0.1
- psr/http-server-middleware: ^1.0
- symfony/console: 5.3.2
- symfony/dotenv: ^5.3
- symfony/http-foundation: ^5.1
Requires (Dev)
- phpmd/phpmd: @stable
- phpunit/phpunit: ^9.0
- squizlabs/php_codesniffer: 3.5.*
Suggests
- filp/whoops: To make reading errors easier
- symfony/console: For using the console generators
This package is auto-updated.
Last update: 2025-03-10 10:53:28 UTC
README
O Selene é uma micro-framework PHP.
Selene foi desenvolvido para tornar mais simples as tarefas comuns utilizadas na maioria dos projetos da web, selene possui:
- Sistema de MVC
- Sistema de roteamento
- Sistema de injeção de dependência
- Gerenciamento de sessão
- Autenticação de usuário
- Query Builder para banco de dados Mysql e MongoDB.
- Sistema de template engine
- Sistema de Middleware
- Sistema de redirecionamento de usuário
- Gerenciamento do sistema de arquivos
- Gerenciamento de Logs
Instalação
É recomendável que você use Composer para instalar selene.
$ composer require ovalves/selene "dev-master@dev"
Isso instalará Selene e todas as suas dependências. Selene requer PHP 8.0 ou superior.
Uso básico
Crie um arquivo index.php com o seguinte conteúdo:
<?php require 'vendor/autoload.php'; /* |-------------------------------------------------------------------------- | Obtendo uma instância de Selene Framework |-------------------------------------------------------------------------- | | '/var/www/html/app/' é o mapeamento da raiz da nossa aplicação */ $app = Selene\App\Factory::create('/var/www/html/app/'); /* |-------------------------------------------------------------------------- | Usando o roteador para registrar as rotas da sua aplicação |-------------------------------------------------------------------------- | No caso abaixo, estamos criando um grupo nomeado 'auth' | | A criação de grupo de rotas serve para facilitar a utilização dos middlewares */ $app->route()->group('auth', function () use ($app) { /* |-------------------------------------------------------------------------- | Neste caso, estamos adicionando o middleware de autentição |-------------------------------------------------------------------------- | Esse middleware será executado em todas as rotas que pertencerem a esse grupo */ $app->route()->middleware([new Selene\Middleware\Handler\Auth]); /* |-------------------------------------------------------------------------- | Esta rota responde como um callable |-------------------------------------------------------------------------- */ $app->route()->get('/callable', function () use ($app) { $app->json('Hello World!!!'); }); /* |-------------------------------------------------------------------------- | Mapeamento de método HTTP da request com a solicitação HTTP do cliente |-------------------------------------------------------------------------- */ $app->route()->get('/', 'HomeController@index'); $app->route()->get('/show/{id}', 'HomeController@show'); $app->route()->update('/show/{id}', 'HomeController@show'); $app->route()->delete('/show/{id}', 'HomeController@show'); $app->route()->post('/show', 'HomeController@login'); })->run();
Exemplos
Para mais exemplos, acesse https://github.com/ovalves/selene-skeleton.
Licença
O Selene framework é usa a licença MIT license. Veja License File para maiores informações.