定制 tiomarilde/micro-framework 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tiomarilde/micro-framework

Composer 安装命令:

composer require tiomarilde/micro-framework

包简介

Micro-framework PHP enxuto e modular: ORM, Router, Auth, Validation, Security, Container, View, Queue, Console e Schema.

README 文档

README

Um micro-framework PHP 8.4+, modular e de baixo acoplamento. O core/ é o framework; tudo fora dele (app/, config/, routes/, resources/) é um starter genérico que você adapta para qualquer aplicação.

Filosofia: use só o que precisar. Dá para usar apenas o ORM, apenas o roteamento, ou apenas a validação — sem arrastar o resto.

Requisitos

  • PHP 8.4+ com as extensões pdo_mysql, mbstring, fileinfo, openssl
  • MySQL 8
  • Composer

Há duas formas de usar: (A) clonar este repositório e rodar o starter completo (bom para começar do zero), ou (B) instalar só o core como dependência Composer em um projeto que você já tem.

A) Rodar o starter (este repositório)

O repositório inclui um ambiente Docker (nginx + php-fpm + MySQL).

cp .env.example .env                 # ajuste as credenciais se necessário
docker compose up -d --build         # sobe nginx, php-fpm e MySQL
docker exec micro-framework composer install
docker exec micro-framework php console migrate

A aplicação fica disponível em http://localhost/.

B) Instalar como dependência (Composer)

Para reaproveitar o core em outro projeto sem clonar este repositório, instale-o como pacote. Como o repositório é privado, use um repositório VCS apontando para o GitHub — sem necessidade de Packagist.

No composer.json do seu projeto, registre o repositório:

{
  "repositories": [
    { "type": "vcs", "url": "git@github.com:tiomarilde/micro-framework.git" }
  ]
}

E instale:

composer require tiomarilde/micro-framework:^3.27

O Composer resolve pelas tags SemVer (via SSH). O ^3.27 traz minors/patches automaticamente (mantendo < 4.0.0); mudanças incompatíveis exigem bump manual. Para atualizar depois: composer update tiomarilde/micro-framework.

No entry point do projeto, require 'vendor/autoload.php' já carrega o namespace Core\ e os helpers globais do core.

O que o pacote traz — e o que não traz

O pacote expõe apenas o Core\ (o framework). O scaffold de aplicação (bootstrap/, config/, public/index.php, routes/, resources/) não vem no pacote — ele é o starter, específico de cada app. Copie esses diretórios deste repositório uma vez para o seu projeto e, a partir daí, atualize só o core via Composer.

O bootstrap/app.php é quem monta o Container e registra os serviços (App::setContainer, Config, Request, Session, ConnectionManager, Auth, Router…) — veja architecture.md e container.md.

Quickstart

1. Rotaroutes/app.php:

$router->get('/hello/{name}', [HelloController::class, 'show']);

2. Controllerapp/Controllers/HelloController.php (php console make:controller HelloController):

namespace App\Controllers;

use Core\Router\Http\Request;
use Core\Router\Http\Response;

class HelloController
{
    public function show(Request $request, string $name): Response
    {
        return view('hello', ['name' => $name]);
    }
}

3. Viewresources/hello.blade.php:

<h1>Olá, {{ $name }}!</h1>

Estrutura

core/            → o framework (não misture regra de negócio aqui)
app/             → seus controllers, models, middlewares
config/          → app, auth, authorization, console, view
routes/          → definição de rotas
resources/       → views (.blade.php) e páginas de erro
database/        → migrations e seeders
public/          → front controller (index.php)
console          → CLI do framework

Módulos do core

Módulo O que faz Depende de
Container injeção de dependência + autowiring — (fundação)
Router rotas, middlewares, CSRF Container
Database ORM, QueryBuilder, conexões nomeadas ConnectionManager + PDO
Schema schema builder + migrations PDO
Auth autenticação por sessão, remember-me, rate limit Session + model de usuário
Authorization RBAC opt-in (gate, permissões, papéis) nada obrigatório (resolver de banco é opcional)
View engine de templates estilo Blade
Validation validação de entrada
Security criptografia, JWT, TOTP ext-openssl
Queue jobs assinados, dispatcher, worker Database (driver padrão)
Log logging com handlers
Support Str, Hash, UUID, uploads

Documentação detalhada de cada módulo em core/documentation/.

CLI

php console list               # lista os comandos
php console make:controller X  # gera controller
php console make:model X       # gera model
php console make:migration X   # gera migration
php console migrate            # roda migrations pendentes
php console migrate:status     # status das migrations
php console db:seed            # roda seeders

Testes

Os testes usam Pest, em tests/Unit e tests/Feature:

docker exec micro-framework php vendor/bin/pest

Documentação

O índice completo está em core/documentation/README.md. Destaques: arquitetura, container, ORM, autorização/RBAC.

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-07-13

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固