Framework minimalista inspirado no Laravel, mas construído em PHP puro, ideal para estudar as bases de migrations, seeders, jobs, workers, controllers, routes e models.
docker compose up -dCaso veja erro de permissão, rode com
sudo docker compose up -dou adicione seu usuário ao grupo docker:sudo usermod -aG docker $USER && newgrp docker
Acesse: http://localhost:8989
Credenciais padrão:
Servidor: db
Usuário: root
Senha: root
Crie o banco de dados matephp.
Crie e edite o arquivo .env:
cp .env.example .envConfigure:
DB_DRIVER=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=matephp
DB_USERNAME=root
DB_PASSWORD=root
Dentro do container PHP:
docker exec -it matephp-php bash
php cli.php migrate
php cli.php seedAcesse no navegador ou via curl:
GET http://localhost:8001/api/hello
Deve retornar:
{ "message": "Hello, world!" }- Inicie o MySQL local (XAMPP, Laragon, etc.)
- Crie o banco
matephp - Edite
.envcom suas credenciais locais:cp .env.example .env
- Gere o autoload e rode as migrations:
composer dump-autoload php cli.php migrate
- Suba o servidor embutido do PHP:
php -S localhost:8000 -t public
- Teste:
GET http://localhost:8000/api/hello
-
Crie um VirtualHost no Apache apontando para
public/:<VirtualHost *:80> ServerName matephp.local DocumentRoot "C:/caminho/para/matePHP/public" <Directory "C:/caminho/para/matePHP/public"> AllowOverride All Require all granted </Directory> </VirtualHost>
-
Adicione no arquivo
hosts:127.0.0.1 matephp.local -
Reinicie o Apache e acesse: http://matephp.local/api/hello
-
Para reiniciar o ambiente Docker limpo:
docker compose down -v --remove-orphans docker compose up -d --build
-
Para entrar no container PHP:
docker exec -it matephp-php bash
matePHP/
│
├── app/ # Controllers e Models
├── framework/ # Core do framework
├── public/ # index.php principal
├── database/
│ ├── migrations/
│ └── seeders/
├── cli.php # Console kernel (migrate, seed etc.)
├── docker/
│ ├── php/
│ │ └── Dockerfile
│ └── nginx.conf
├── docker-compose.yml
├── composer.json
└── .env.example
Desenvolvido para fins educacionais.
💡 matePHP é um framework didático para entender como o Laravel funciona por dentro.