brickphp/core

The core engine of BrickPHP framework

Maintainers

Package info

github.com/donatodelpeschio/brickphp-core

pkg:composer/brickphp/core

Statistics

Installs: 18

Dependents: 1

Suggesters: 0

Stars: 1

Open Issues: 0

v1.0.0 2026-02-10 10:10 UTC

This package is auto-updated.

Last update: 2026-04-10 11:33:10 UTC


README

Latest Stable Version License PHP Version

Questo repository contiene il motore logico del framework BrickPHP. È progettato per essere leggero, modulare e privo di dipendenze pesanti, fornendo le fondamenta necessarie per gestire il ciclo di vita di una richiesta HTTP in un pattern MVC.

Nota: Questo pacchetto è un componente interno. Per iniziare a sviluppare un'applicazione, utilizza lo Skeleton Ufficiale di BrickPHP.

🏗️ Architettura del Core

Il Core gestisce il flusso della richiesta attraverso i seguenti componenti fondamentali:

  1. HTTP Layer: Gestione di Request (cattura globali, sessioni, input) e Response (header, status code, body).
  2. Routing: Un sistema di routing basato su Regex con supporto per parametri dinamici {id}.
  3. Dispatcher: Risolve ed esegue i Controller iniettando le dipendenze necessarie.
  4. Database Wrapper: Un'interfaccia fluida sopra PDO per query veloci e sicure.
  5. View Engine: Sistema di rendering leggero con supporto per l'estrazione di dati e buffer di output.

🛠️ Componenti Tecnici

Sistema di Routing

Il router supporta definizioni pulite e mappatura diretta ai controller:

$router->get('/profile/{id}', [UserController::class, 'show']);

Database & Model

BrickPHP include un Database Manager globale accessibile tramite l'helper db():

$users = db()->table('users')->where('active', 1)->get();

Global Helpers

Per semplificare lo sviluppo, il Core espone funzioni globali caricate via Composer:

  • view($name, $data) Renderizza una vista.
  • db() Istanza del query builder.
  • env($key, $default) Accesso sicuro alle variabili d'ambiente.
  • cache() Gestione della cache (File/Redis).

📦 Installazione (Standalone)

Se desideri utilizzare solo il motore di BrickPHP in un progetto custom:

composer require brickphp/core

Nel tuo entry point, definisci la costante BRICK_PATH per orientare il framework:

define('BRICK_PATH', __DIR__);
require 'vendor/autoload.php';

🤝 Contribuire

Siamo aperti a contributi! Se hai idee per migliorare le performance o aggiungere funzionalità al motore:

  1. Fai il Fork del progetto.

  2. Crea un branch per la tua feature (git checkout -b feature/AmazingFeature).

  3. Fai il Commit delle tue modifiche.

  4. Pusha sul branch.

  5. Apri una Pull Request.

Sostieni lo sviluppo

Se questo motore ti aiuta a costruire software più velocemente, considera una piccola donazione per supportarne il mantenimento:

☕ Supporta BrickPHP su PayPal

📄 Licenza

Questo progetto è rilasciato sotto licenza MIT. Consulta il file LICENSE per maggiori dettagli.

Core Engine ideato da Donato Del Peschio