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:
python3 -m venv poliedro_venv
source poliedro_venv/bin/activate
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.
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 .
export FLASK_DEBUG=1
python -m poliedro_donate
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.