Skip to content

Latest commit

 

History

History
63 lines (45 loc) · 4.23 KB

README.it.md

File metadata and controls

63 lines (45 loc) · 4.23 KB

Bicchiere

Bicchiere Logo

Un altro micro-framework Web Python (WSGI)

Seguendo le orme di Flask e Bottle, aggiungendo un po' di italiano sapore :-)

Installa

pip install bicchiere

Versione corrente: 1.9.5

GitHub tag (latest by date)    

Una goccia di Bicchiere

from bicchiere import Bicchiere

app = Bicchiere()
oppure
app = Bicchiere("La mia bellissima app")

@app.get("/")
def main():
    return "Bon giorno, cosa bevete oggi?"
    
if __name__ == "__main__":
    #Questo eseguirà il server predefinito su http://localhost:8086
    app.run()

...e questa è la classica versione WSGI di Hello World, per tutto il resto vedi Bicchiere Wiki

Beh, non proprio. Qui è necessario un po' di giustificazione.

Allora perché Bicchiere?

  • Da un lato, reinventare la ruota non è solo divertente, ma anche molto educativo, quindi fallo con tutti i mezzi!

  • Mi piace Flask and Bottle. Tanto. Entrambi hanno cose che apprezzo molto, la semplicità in primo luogo. Ma non finisce qui.

  • Esiste anche l'approccio file singolo/nessuna dipendenza (Bottle), che intendo imitare con Bicchiere. Anche se non è obbligatorio, mi piace così.

  • Sessioni integrate (Flask). Anche se l'utente della libreria dovrebbe essere libero di scegliere quello che vuole per quanto riguarda le sessioni o qualsiasi altro componente dell'applicazione, penso che la gestione delle sessioni sia uno di quei must in qualsiasi applicazione web di questi tempi. Quindi, ho fornito un meccanismo di base per la gestione delle sessioni, in 3 varianti: memoria, filesystem e sqlite. Questo era il massimo che si poteva fare senza uscire dai limiti della libreria standard di Python. Dettagli a riguardo su il wiki (in costruzione)

  • Meccanismo modello incorporato (Bottle). Si applicano considerazioni simili. IMO anche questo è un must, indipendentemente da quanto sia micro il framework/libreria. D'altra parte, l'utente finale deve essere libero di scegliere. Essendo un buon middleware conforme a WSGI, Bicchiere non intralcia l'utente se preferisce usare Mako, [Jinja2](https://jinja. palletsprojects .com/en/3.1.x/), Genshi o qualunque cosa lei/lui voglia. Dettagli su il wiki (in costruzione)

  • Gestione dei WebSocket: per me questa è la ciliegina sulla torta, per diversi motivi:

    1. È stato detto che non può essere fatto sotto WSGI, motivo in più per farlo.
    2. La comunicazione in tempo reale sembra un altro imperativo nel panorama odierno dello sviluppo di applicazioni web.
    3. D'altra parte, è molto divertente. anche troppo doloroso... In ogni caso Bicchiere viene fornito con supporto WebSocket nativo, appena sfornato :-)) Dettagli su il wiki (in costruzione) . Sfortunatamente, l'app demo da origine non funzionerà con i websocket, perché Pythonanywhere non ha ancora implementato la funzionalità. A partire da ora, c'è un mirror su bicchiere.sytes.net che funziona bene, prova la home page e tutto. In ogni caso, questi problemi sono correlati alle impostazioni del proxy inverso e non hanno nulla a che fare con l'app/libreria stessa.
  • E ancora, ci sono molte cose da menzionare. E c'è dell'altro...