Engineering · Application framework
Csd
Framework PHP 8 AGPL per applicazioni web gestionali e servizi che devono restare comprensibili, modificabili e mantenibili anche dopo anni.
Runtime
PHP 8
Impostazione
MVC pragmatico
Licenza
GNU AGPL v3
In produzione
FattureWeb · NewVoip · TinyTop
Perché esiste
Convenzioni sufficienti a ridurre il caos, senza nascondere PHP.
Csd nasce dall’evoluzione di una base CodeIgniter 3.1.0 e mantiene un’impostazione volutamente pragmatica: controller, model, librerie e viste restano leggibili e sotto il controllo dello sviluppatore.
MVC
Struttura prevedibile
Routing, controller, model e viste seguono convenzioni stabili, facili da ritrovare anche in progetti molto cresciuti.
LIB
Librerie riutilizzabili
Autenticazione, helper, componenti applicativi e funzioni comuni possono essere condivisi senza duplicare logica.
DATA
Accesso ai dati
Il framework mantiene vicino il rapporto tra codice applicativo e database, senza trasformare ogni query in una scatola nera.
UI
Web & AJAX
Rendering server-side e interazioni AJAX possono convivere nello stesso progetto senza obbligare a un frontend separato.
Flusso applicativo
Pochi livelli, responsabilità leggibili.
Csd privilegia un percorso esplicito. La richiesta attraversa componenti noti e il codice applicativo resta facile da seguire anche quando il progetto integra database, API o servizi esterni.
01 · HTTP
Request & routing
La richiesta viene instradata verso il controller responsabile del caso d’uso.
02 · APP
Controller & libraries
Il controller coordina validazione, autorizzazioni, librerie e logica applicativa.
03 · DATA
Models & database
I model gestiscono persistenza e interrogazioni mantenendo chiaro il rapporto con lo schema dati.
04 · OUT
View / AJAX / API
La risposta può diventare pagina HTML, payload AJAX o endpoint per integrazioni esterne.
Una base, prodotti diversi
La prova del framework sono le applicazioni che ci girano sopra.
Csd non è nato come esercizio teorico. È la base comune di applicazioni con esigenze molto differenti, dalla fatturazione elettronica al controllo di infrastrutture VoIP.
FattureWeb
SaaS gestionale con documenti, fatturazione elettronica, contabilità operativa, abbonamenti e API.
NewVoip
Pannello applicativo che integra database, WebSocket, monitoring, provisioning e controllo di sistemi PBX.
TinyTop
Applicazione costruita sullo stesso nucleo Csd, utile come ulteriore prova di riuso della base applicativa.
Evoluzione comune
Correzioni e componenti riutilizzabili possono essere riportati nel framework invece di restare confinati a un singolo prodotto.
Scelte deliberate
Meno magia, più controllo.
Il framework non cerca di inseguire ogni moda dello sviluppo web. L’obiettivo è mantenere applicazioni lunghe da vivere, facili da diagnosticare e modificabili senza dover ricostruire mentalmente una catena di astrazioni opache.
PHP 8
Runtime moderno, ma con un modello applicativo conservativo e leggibile.
MVC
Separazione sufficiente tra flusso, dati e presentazione senza moltiplicare i livelli.
AGPL
Codice aperto e verificabile, con una licenza coerente con l’uso in servizi di rete.
Documentazione in evoluzione
Il framework è già usato in applicazioni reali; la parte pubblica di documentazione e presentazione viene aggiornata progressivamente per rendere più semplice comprenderne struttura, convenzioni e componenti.
Framework come infrastruttura applicativa
Una base comune riduce duplicazioni e rende più prevedibile l’evoluzione.
Se vuoi approfondire Csd o capire come viene usato nei progetti Dascos, possiamo partire da uno dei casi reali costruiti sul framework.