Social Business Catalog (beta) è un aggregatore, una vetrina ed una API per fornitori e prodotti dell'economia solidale.
per avere un deposito (repository
) da cui attingere e su cui riversare i dati dei fornitori e prodotti ecosol italiani;
con tecnologie "smart" che ci consentono di fare prototipazione rapida e "toccare con mano" la sfida.... e con grande entusiasmo!
SBcatalog propone:
Un caso d'uso:
Visione d'insieme dove AGGREGATOR = SBCatalog:
Lo schema è stato preso dalla tesi di Matteo Micheletti "Definition and implementation of a data exchange and share standard between solidarity-based group management programmes"
NOTA: i nomi dei siti/software sono solo a titolo esemplificativo e non esaustivo, per una lista completa si veda il wikibook GAS ed Economia Solidale
In particolare OGGI il contesto è costituito da questi elementi:
*.economiasolidale.net
ad esempio: sbcatalog.economiasolidale.net
Ora l'obiettivo è di fare un proof-of-concept per dire che "SI... PUÒ... FARE!!", ma anche LO STIAMO FACENDO!.
Sì perché l'economia solidale è questo, è inventarsi modi nuovi, è riscoprire le relazioni, è superare delle sfide e ormai in molti lo stiamo facendo. Con leggerezza, dedizione e costanza: e ce la stiamo facendo.
Grazie a tutti quelli che ci provano
L'applicazione consiste di 5 container:
test
: per lanciare i test integration+e2e verso il proxy
proxy
: NGiNX che indirizza le richieste a front
e back
front
: HarpJS fornisce la web UIback
: uWSGI serve l'API server Flask/Evedb
: MongoDBPer i prerequisiti vedere qui
Clonare il progetto:
$ git clone https://github.com/befair/sbcatalog && cd sbcatalog
Lanciare l'intera applicazione in background:
$ make up
La prima volta questa operazione richiedera' alcuni minuti.
Infine andare su:
Per i principali comandi:
$ make help
Se il server risiede in un dominio remoto settare la apiBaseUrl
correttamente, ad esempio:
$ echo '{ "apiBaseUrl" : "http://sbcatalog.labs.befair.it/api" }' > ui/settings.json
Per generare un elenco di fornitori georeferenziati (utilizzati dalla mappa di sbcatalog):
$ make back
Per la georeferenziazione
viene utilizzato Open Street Map.
Tramite API è possibile interagire con il database dei fornitori in questo modo:
Inserire nuovi fornitori con i relativi cataloghi prodotti:
$ curl -XPOST -d @<file.gdxp> -H "Content-type: text/xml" http://localhost:8080/api/v1/gdxp/supplier/
Scaricare tutti i fornitori e i cataloghi prodotti in formato GDXP:
$ curl -XGET -H "Content-type: text/xml" http://localhost:8080/api/v1/gdxp/supplier/
Scaricare tutti i fornitori e i cataloghi prodotti in formato JSON:
$ curl -XGET -H "Content-type: application/json" http://localhost:8080/api/v1/supplier/
Scaricare le informazioni geomatiche (coordinate, indirizzo, nome) dei fornitori:
$ curl -XGET -H "Content-type: application/json" http://localhost:8080/api/v1/geo/supplier/
Per usare le API della piattaforma ufficiale di produzione di sbcatalog, sostituire http://localhost:8080/api/v1
con http://sbcatalog.labs.befair.it/api
.
Per lanciare specifici test:
$ make test-unit
$ make test-integration
Per lanciare tutti i test:
$ make test
Social Business Catalog is Copyright © 2015 beFair.it
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License version 3, as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranties of MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.