-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of github.com:aleiepure/WalkAware
- Loading branch information
Showing
8 changed files
with
127 additions
and
80 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,42 +1,63 @@ | ||
# WalkAware Trento | ||
<div align="center"> | ||
<h1><img src="./icon.png" height="128"/><br>WalkAware Trento</h1> | ||
</div> | ||
<div align="center"> | ||
<a href="/~https://github.com/aleiepure/WalkAware/actions/workflows/test.yaml" title="Tests status"> | ||
<img src="/~https://github.com/aleiepure/WalkAware/actions/workflows/test.yaml/badge.svg"/> | ||
</a> | ||
<a href="/~https://github.com/aleiepure/WalkAware/actions/workflows/deploy.yaml" title="Deploy to Render status"> | ||
<img src="/~https://github.com/aleiepure/WalkAware/actions/workflows/deploy.yaml/badge.svg"></img> | ||
</a> | ||
</div> | ||
|
||
Progetto per il corso di Ingegneria del software, prof. Sandro Fiore - Università degli studi di Trento. | ||
|
||
## Descrizione | ||
|
||
Walkaware Trento si propone di aiutare il comune di Trento a migliorare alcuni aspetti della città. | ||
Il progetto si suddivide in due applicazioni rivolte a due categorie di utenti diverse. | ||
|
||
Il progetto si suddivide in due applicazioni rivolte a due categorie di utenti diverse: | ||
La prima è un'app mobile rivolta ai cittadini. L’interfaccia si presenta come una mappa e una barra di ricerca tramite la quale l’utente può cercare luoghi e ottenere indicazioni stradali come pedone. I passi dell'utente vengono registrati sotto forma di punti, che potranno poi essere utilizzati per ottenere buoni sconto per esercizi e attrazioni locali. Inoltre l’utente può inviare segnalazioni se incontra dei problemi nelle infrastrutture dislocate sul territorio. | ||
|
||
1. Un'app mobile dedicata ai cittadini, dove l’utente viene incentivato a camminare e segnalare problemi sul territorio. I punti accumulati con le azioni precedenti possono essere utilizzati in eventi culturali e negozi locali. | ||
La seconda parte è una web app che aggrega i dati prodotti dai cittadini, permette l'amministrazione delle informazioni sulle aziende convenzionate e i premi messi a disposizione, suggerisce luoghi d’interesse che appariranno sulla mappa e consente la gestione delle segnalazioni. | ||
|
||
2. Un'app web dedicata al supporto tecnico e a dipendenti del comune. Questa raccoglie i dati relativi agli utenti mobile e delle aziende convenzionate. | ||
## Come usare | ||
|
||
## Requisiti | ||
- Node.js | ||
- Database MongoDB | ||
- Account Cloudflare R2 | ||
### In cloud | ||
|
||
## Come usare | ||
Il servizio web é disponibile in cloud ai seguenti link: | ||
Il servizio è fruibile in cloud ai seguenti indirizzi | ||
|
||
- [WalkAware Trento Backend](https://walkaware.onrender.com/) | ||
|
||
- [WalkAware Trento Frontend](https://walkaware-frontend.onrender.com) | ||
|
||
- L'applicazione mobile è scaricabile nell'[ultima release](/~https://github.com/aleiepure/WalkAware/releases/latest) | ||
|
||
Altrmenti seguire i passi successivi per eseguire l'app in locale. | ||
### In locale | ||
|
||
#### Dipendenze | ||
|
||
- Node.js | ||
- Database MongoDB | ||
- Account Cloudflare R2 | ||
|
||
#### Istruzioni | ||
|
||
Seguire i seguenti passaggi | ||
|
||
1. Clona repository: | ||
``` bash | ||
git clone /~https://github.com/aleiepure/WalkAware.git | ||
cd WalkAware | ||
|
||
``` shell | ||
git clone /~https://github.com/aleiepure/WalkAware.git && cd WalkAware | ||
``` | ||
Per i prossimi passi da seguire fare riferimento ai relativi README.md di [backend](./backend/README.md), [frontend](./frontend/webapp/README.md) e [Mobile App](./frontend/mobile/README.md). | ||
|
||
|
||
2. Segui le istruzioni nei file README nelle sottocartelle [backend/](./backend/README.md), [frontend/webapp/](./frontend/webapp/README.md) e [frontend/mobile/](./frontend/mobile/README.md). | ||
|
||
## Organizzazione Repository | ||
|
||
```shell | ||
├── backend | ||
├── frontend | ||
│ ├── mobile | ||
│ └── webapp | ||
└── readme.md | ||
``` | ||
└── README.md | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,51 +1,63 @@ | ||
# WalkAware Trento Backend | ||
# WalkAware Trento - Backend | ||
|
||
Il backend è sviluppato utilizzando Express.js e offre una serie di API RESTful per gestire diverse funzionalità dell'applicazione. | ||
|
||
Il servizio è eseguibile in cloud a questo indirizzo: [WalkAware Trento Backend](https://walkaware.onrender.com/), per eseguire l'app in locale seguire le seguenti indicazioni. | ||
|
||
|
||
## Come usare | ||
1. Clonare il repository se non è già stato fatto: | ||
``` bash | ||
git clone /~https://github.com/aleiepure/WalkAware.git | ||
cd WalkAware/backend | ||
|
||
1. Dopo ever [clonato la repo](../../README.md#istruzioni) entrare nella cartella del backend | ||
|
||
``` shell | ||
cd backend | ||
``` | ||
2. Installa le dipendenze: | ||
``` bash | ||
|
||
2. Installa le dipendenze | ||
|
||
``` shell | ||
npm install | ||
``` | ||
|
||
### Configurazione | ||
Crea un file .env nella radice della cartella e aggiungi le seguenti variabili d'ambiente: | ||
```bash | ||
|
||
Crea un file `.env` nella radice della cartella e aggiungi le seguenti variabili d'ambiente | ||
|
||
```shell | ||
SUPER_SECRET="password generazione jwt token" | ||
MONGODB_URI="uri database mongodb production" | ||
MONGODB_URI_TEST="uri database mongodb test" | ||
R2_ACCOUNT_ID="R2 account id" | ||
R2_ACCESS_KEY_ID="R2 chiave di accesso" | ||
R2_SECRET_ACCESS_KEY="R2 chiave segreta di accesso" | ||
``` | ||
Assicurarsi di sostituire con i valori corretti. | ||
|
||
Assicurarsi di sostituire con i valori corretti. | ||
|
||
### Esecuzione | ||
|
||
Per avviare il server in modalità di production: | ||
```bash | ||
|
||
```shell | ||
node ./index.js | ||
``` | ||
|
||
Per avviare il server in modalità di sviluppo: | ||
```bash | ||
|
||
```shell | ||
npm run run-dev | ||
``` | ||
|
||
## Test | ||
I test sono stati sviluppati utilizzando un database apposito e per evitare problemi i file devono essere esguiti sequanzialmente, richiamando lo script presente in package.json con: | ||
```bash | ||
npm run seqtest | ||
Tutte le API REST sono state accuratamente testate tramite unit test. Per eseguire tutti i test usare il comando | ||
|
||
```shell | ||
npm test | ||
``` | ||
|
||
## API | ||
|
||
La documentazione delle API è accessibile ai seguenti link: | ||
- https://walkaware.docs.apiary.io | ||
- https://walkaware.onrender.com/api-docs | ||
|
||
- <https://walkaware.docs.apiary.io> | ||
|
||
- <https://walkaware.onrender.com/api-docs> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,29 +1,36 @@ | ||
# WalkAware Trento Frontend App Mobile | ||
# WalkAware Trento - Frontend App Mobile | ||
|
||
L'applicazione mobile è sviluppata in Flutter ed è dedicata agli abitanti della città di Trento. | ||
|
||
L'app già compilata è scaricabile nell'[ultima release](/~https://github.com/aleiepure/WalkAware/releases/latest). Per eseguirla con un altro backend seguire le seguenti indicazioni. | ||
|
||
## Requisiti | ||
|
||
- [Flutter](https://docs.flutter.dev/get-started/install) | ||
|
||
## Come usare | ||
1. Clonare il repository se non è già stato fatto: | ||
``` bash | ||
git clone /~https://github.com/aleiepure/WalkAware.git | ||
cd WalkAware/frontend/mobile | ||
|
||
1. Dopo ever [clonato la repo](../../README.md#istruzioni) entrare nella cartella del progetto flutter | ||
|
||
``` shell | ||
cd frontend/mobile | ||
``` | ||
2. Per configurare mapbox seguire la sezione "secret token" a questo [link](https://pub.dev/packages/mapbox_maps_flutter#installation) | ||
|
||
2. Configurare Mapbox seguendo la sezione "secret token" a questo [link](https://pub.dev/packages/mapbox_maps_flutter#installation) | ||
|
||
3. Installa le dipendenze | ||
```bash | ||
|
||
```shell | ||
flutter pub get | ||
``` | ||
4. Compila l'applicazione: | ||
``` bash | ||
flutter build apk --dart-define PUBLIC_ACCESS_TOKEN=<token di accesso> \ | ||
|
||
4. Esegui l'applicazione su un dispositivo Android con debug abilitato | ||
|
||
``` shell | ||
flutter run --dart-define PUBLIC_ACCESS_TOKEN=<token di accesso> \ | ||
--dart-define BACKEND_BASE_URL=<URL BACKEND> \ | ||
--dart-define FRONTEND_BASE_URL=<URL FRONTEND> \ | ||
--dart-define JWT_SECRET=<jwt secret token uguale al backend> | ||
``` | ||
|
||
Assicurarsi di sostituire con i valori corretti. | ||
|
||
Assicurarsi di sostituire i valori corretti. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,37 +1,44 @@ | ||
# WalkAware Trento Frontend WebApp | ||
Il frontend offre una Web App sviluppata con Express.js ed ejs. Questa è dedicata al supporto tecnico e ai dipendenti del comune di Trento. | ||
# WalkAware Trento - Frontend WebApp | ||
|
||
Il servizio è eseguibile in cloud a questo indirizzo: [WalkAware Trento Frontend](https://walkaware-frontend.onrender.com/), per eseguire l'app in locale seguire le seguenti indicazioni. | ||
Il frontend offre una Web App sviluppata con Express.js ed ejs. Questa è dedicata al supporto tecnico e ai dipendenti del comune di Trento. | ||
|
||
Il servizio è eseguibile in cloud a questo indirizzo: [WalkAware Trento Frontend](https://walkaware-frontend.onrender.com/), per eseguire l'app in locale seguire le seguenti indicazioni. | ||
|
||
## Come usare | ||
1. Clonare il repository se non è già stato fatto: | ||
``` bash | ||
git clone /~https://github.com/aleiepure/WalkAware.git | ||
cd WalkAware/frontend/webapp | ||
|
||
1. Dopo ever [clonato la repo](../../README.md#istruzioni) entrare nella cartella della webapp | ||
|
||
``` shell | ||
cd frontend/webapp | ||
``` | ||
|
||
2. Installa le dipendenze: | ||
``` bash | ||
|
||
``` shell | ||
npm install | ||
``` | ||
|
||
### Configurazione | ||
Crea un file .env nella radice della cartella e aggiungi le seguenti variabili d'ambiente: | ||
```bash | ||
|
||
Crea un file `.env` nella radice della cartella e aggiungi le seguenti variabili d'ambiente: | ||
|
||
```shell | ||
SUPER_SECRET="password generazione jwt token" | ||
BACKEND_BASE_URL="URL backend" | ||
``` | ||
Assicurarsi di sostituire con i valori corretti. | ||
|
||
Assicurarsi di sostituire con i valori corretti. | ||
|
||
### Esecuzione | ||
|
||
Per avviare il server in modalità di production: | ||
```bash | ||
|
||
```shell | ||
node ./index.js | ||
``` | ||
|
||
Per avviare il server in modalità di sviluppo: | ||
```bash | ||
|
||
```shell | ||
npm run run-dev | ||
``` | ||
|
||
|
||
|