Skip to content

poliedro-polimi/Crowdfunding-Backend

Repository files navigation

Back-end per il sito di crowdfunding di PoliEdro

Build Status Coverage Status Codacy Badge Language Python versions license Author Gayness

Il back-end gestisce i pagamenti con PayPal e si occupa di memorizzare i dettagli delle donazioni e delle prenotazioni su un database.

Verrà hostato su PythonAnywhere (poliedropolimi.pythonanywhere.com).

Il front-end invece è scritto in PHP, verrà hostato sul servizio di web hosting già utilizzato da PoliEdro (donate.poliedro-polimi.it).

Il back-end è scritto in Flask. Per eseguirlo in locale:

1. Creazione del virtualenv

python3 -m venv poliedro_venv
source poliedro_venv/bin/activate

2. Installazione

pip install --upgrade https://github.com/poliedro-polimi/Crowdfunding-Backend/archive/master.zip
pip install https://github.com/Depau/braintreehttp_python-noparseresponse/archive/master.zip

Nota: il software utilizza una versione modificata di BrainTreeHTTP le cui modifiche non sono state ancora accettate upstream. È necessario reinstallarla ogni qual volta braintreehttp venga aggiornato, in modo da sovrascriverlo.

Questo non è ottimale, troverò un modo migliore per risolvere questo problema.

Modalità development

Se si dispone di un clone del repository git, è possibile installare il pacchetto in modalità development, per rendere subito disponibili le modifiche al codice.

cd path/to/Crowdfunding-Backend
pip install -e .

3. Esecuzione

export FLASK_DEBUG=1
python -m poliedro_donate

Compatibilità

Il software è scritto per e viene testato su Python3 e PyPy3.

In linea di massima è compatibile con tutti i sistemi operativi per i quali è disponibile Python3 e tutte le dipendenze richieste; tuttavia viene testato solo su Linux.