Il framework Web full-stack Pafera

Il framework web semplice, efficiente e vecchio stile per le persone che sanno cosa stanno facendo

Caratteristiche

Desideri un framework che puoi controllare direttamente dal browser?
Poter creare nuove pagine con un paio di clic?
Creare una nuova pagina tradotta semplicemente selezionando un codice lingua?
Utilizzare SQL effettivo anziché query builder astratti per tutte le operazioni del database?
Vuoi ottenere buone prestazioni anche da un telefono Android da 80 dollari?
Hanno opzioni TOTP e passkey integrate?
Gestione integrata del caricamento dei file per utente?
Il sistema ha fornito l'integrazione con Stripe e il negozio?
E tutto in 400 KiB?

Video di esempio

Installazione su un telefono Android di cinque anni fa

Test delle prestazioni dell'app Blog

Filosofia del design

I computer moderni sono più veloci dei computer del passato, spesso con margini incredibili. Allora perché sembra spesso che ci voglia più tempo per fare le cose?

Per qualcuno che ha imparato a programmare sul vecchio IBM PS/2 con DOS 6.1 più di vent'anni fa, la risposta è semplice.

  1. I software moderni svolgono molte più funzioni rispetto ai software più vecchi, ma principalmente nell'ambito visivo, mentre il lavoro vero e proprio richiede una frazione del tempo di esecuzione.
  2. Le aziende stanno scegliendo di privilegiare la velocità di sviluppo con l'efficienza del codice.
  3. I programmatori stanno scegliendo di utilizzare framework grandi e complessi anziché ricorrere solo ai metodi più semplici e rapidi per raggiungere gli obiettivi di progettazione.
  4. L'avvento dei servizi cloud e dell'elaborazione on-demand ha permesso alle aziende pigre di investire in hardware anziché ottimizzare il software.

Naturalmente, questo non è vero per tutte le aziende, specialmente per quelle che hanno capito che spendere grandi quantità di denaro in hosting e servizi sta intaccando i loro profitti. In tutto il web, sentiamo costantemente storie di aziende che cambiano le loro piattaforme software e risparmiano dal 20 al 40% sui costi di hosting, ottimizzando i database per ridurre i tempi di query di un fattore di dieci o più e aumentando i tempi di risposta riprogettando parti delle loro applicazioni in codice asincrono usando Node.js, Rust, Go o altri linguaggi moderni simili.

Il Pafera Web Framework è progettato per essere semplice, efficiente ed economico, ma solo se si conoscono già le tecnologie sottostanti. Non ci tiriamo indietro da SQL, HTML, CSS o JavaScript ai livelli di base, ma li abbracciamo per creare qualcosa che sia di livello sufficientemente alto da essere rapido nei tempi di sviluppo, ma di livello sufficientemente basso da essere veloce e personalizzabile per qualsiasi situazione.

Installazione

Il modo migliore per iniziare a usare Pafera Framework è scaricarlo e iniziare a utilizzarlo.

Se stai utilizzando un sistema basato su Ubuntu, Arch Linux o Termux su Android, l'installazione è semplice come digitare

wget https://pafera.com/install.sh
chmod +x install.sh
./install.sh

Se stai usando altri sistemi, dovrai modificare leggermente i comandi. Per Windows, consiglio di usare Anaconda o semplicemente di installare Ubuntu tramite WSL2. Homebrew dovrebbe funzionare bene sui sistemi Mac.

Esercitazione

Per un breve tutorial sullo sviluppo di un'app utilizzando il framework, puoi visitare il repository del codice principale su Codeberg per Versione Python

La versione PHP non è stata toccata per un po', ma condivide un po' la stessa filosofia di progettazione della versione Python, con differenze nel supporto linguistico e nel caricamento automatico. Il repository del codice è disponibile qui , mentre la documentazione è disponibile qui

Piani futuri

Sto lavorando a una versione Rust del framework, che dovrebbe garantire notevoli miglioramenti della velocità rispetto all'attuale versione Python a scapito della portabilità e della facilità d'uso. Il supporto asincrono di Rust non è ancora del tutto maturo, ma sembra molto promettente per il futuro.

Eventuali correzioni di bug o suggerimenti sono sempre benvenuti. Inviateli al mio repository Codeberg qui sopra.