{"id":30820923,"url":"https://github.com/dortenzio/waypp","last_synced_at":"2026-05-03T10:32:32.577Z","repository":{"id":306666791,"uuid":"1015502906","full_name":"DOrtenzio/WAYpp","owner":"DOrtenzio","description":"WAYpp, trip app with JavaFx for frontend, php and mysql for backend.","archived":false,"fork":false,"pushed_at":"2025-07-26T21:12:07.000Z","size":648,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-27T01:07:12.757Z","etag":null,"topics":["api","graphhopper","groq-api","http","javafx","mail-api","mysql","php"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DOrtenzio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-07T15:44:58.000Z","updated_at":"2025-07-26T21:12:10.000Z","dependencies_parsed_at":"2025-07-27T01:07:19.267Z","dependency_job_id":"d2485316-ebf8-48e0-9970-82a6d8a98604","html_url":"https://github.com/DOrtenzio/WAYpp","commit_stats":null,"previous_names":["dortenzio/waypp"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/DOrtenzio/WAYpp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DOrtenzio%2FWAYpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DOrtenzio%2FWAYpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DOrtenzio%2FWAYpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DOrtenzio%2FWAYpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DOrtenzio","download_url":"https://codeload.github.com/DOrtenzio/WAYpp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DOrtenzio%2FWAYpp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273888020,"owners_count":25185798,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-06T02:00:13.247Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","graphhopper","groq-api","http","javafx","mail-api","mysql","php"],"created_at":"2025-09-06T10:04:07.131Z","updated_at":"2026-05-03T10:32:32.535Z","avatar_url":"https://github.com/DOrtenzio.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WAYpp - Il Tuo Compagno di Viaggio Intelligente\n\n[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/DOrtenzio/WAYpp/blob/main/LICENSE)\n[![GitHub contributors](https://img.shields.io/github/contributors/DOrtenzio/WAYpp)](https://github.com/DOrtenzio/WAYpp/graphs/contributors)\n[![JavaFX](https://img.shields.io/badge/UI-JavaFX-brightgreen.svg)](https://openjfx.io/)\n[![PHP](https://img.shields.io/badge/Backend-PHP-blueviolet.svg)](https://www.php.net/)\n[![MySQL](https://img.shields.io/badge/Database-MySQL-orange.svg)](https://www.mysql.com/)\n\n---\n\n## 🗺️ Panoramica del Progetto\n\n**WAYpp** è un'applicazione desktop non innovativa progettata per **semplificare la pianificazione e la programmazione dei tuoi viaggi**. Sfruttando la potenza del **cloud**, offre un'esperienza utente fluida e integrata, combinando un'interfaccia intuitiva con funzionalità intelligenti per aiutarti in ogni fase del tuo viaggio. Che tu stia sognando un'avventura esotica o organizzando una breve gita, WAYpp è qui per trasformare le tue idee in realtà.\n\nL'intera architettura si basa su un'infrastruttura client-server:\n* **Frontend:** Realizzato con **JavaFX**, offre un'interfaccia utente moderna e responsiva.\n* **Backend:** Costituito da un **server PHP** che espone diverse API RESTful per gestire la logica di business.\n* **Database:** Un database **MySQL relazionale** progettato ad hoc per garantire l'integrità e l'efficienza dei dati.\n\n---\n\n## ✨ Caratteristiche Principali\n\nWAYpp è ricco di funzionalità pensate per il viaggiatore moderno:\n\n* **Autenticazione Completa:** Gestione di login, registrazione, recupero password e modifica delle informazioni utente.\n* **Esplora Viaggi:** Scopri viaggi standard o lasciati ispirare da **viaggi esotici generati dall'IA (SALVINO)**, personalizzati in base ai tuoi gusti. Puoi scegliere, modificare e fare tuoi questi itinerari.\n    \u003cimg width=\"1127\" height=\"913\" alt=\"image\" src=\"https://github.com/user-attachments/assets/01058e91-8e8c-4fdf-83fd-65265785fcfe\" /\u003e\n* **Gestione Viaggi:** Una sezione dedicata per visualizzare, aggiungere, modificare ed eliminare i tuoi viaggi personali.\n    \u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ac7c1607-6449-40b1-b060-e09bb0d24b6f\" /\u003e\n    \u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/2a0d82c6-eea9-4f43-9660-81066631b294\" /\u003e\n* **Dettaglio Viaggio:** Ogni viaggio è suddiviso in tre sezioni fondamentali:\n    * **💰 Budget:** Tieni sotto controllo le tue spese con un resoconto dettagliato per rimanere sempre nel budget.\n    * **🎒 Elementi:** Prepara la valigia senza dimenticare nulla! **SALVINO** ti suggerisce gli elementi essenziali in base al tipo di viaggio e a ciò che hai già aggiunto.\n    * **📍 Itinerario:** Organizza le tue tappe con mappe interattive, collegamenti ad app di navigazione, calendari per la tabella di marcia e **consigli personalizzati di SALVINO** su cosa vedere e fare in ogni luogo, basandosi sempre sui tuoi gusti.\n   \u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/61714a01-acb6-4f7a-a7a0-4242f9ed88bb\" /\u003e\n   \u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/435fd021-586b-45da-b4ee-c138f57c37a2\" /\u003e\n   \u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/d573b65f-ab57-4263-957f-1b592c7fdcf3\" /\u003e\n\n---\n\n## ⚙️ Tecnologie Utilizzate\n\nWAYpp sfrutta un mix potente di tecnologie e API esterne per offrire la sua ricchezza di funzionalità:\n\n**Core Technologies:**\n\n* **JavaFX:** Per l'interfaccia utente desktop.\n* **PHP:** Per il server backend e le API.\n* **MySQL:** Per la gestione del database relazionale.\n* **Maven:** Gestione delle dipendenze per il progetto Java.\n* **Java 11+:** Per lo sviluppo dell'applicazione desktop, con particolare enfasi sulle `HttpRequest` per le chiamate API esterne.\n\n**API Esterne (e loro potenziale miglioramento):**\n\n* **GraphHopper API:** Per calcolare percorsi mappati precisi e ottimizzati.\n* **Maileroo API:** Utilizzata per l'invio di email, come quelle per il reset della password.\n* **Geocoding API:** Per la conversione di indirizzi in coordinate geografiche e viceversa.\n* **Groq API:** Per l'integrazione dell'IA generativa (SALVINO) che assiste concretamente nell'organizzazione del viaggio, fornendo suggerimenti e creando itinerari.\n* **Unsplash API:** Per l'integrazione di immagini accattivanti nella sezione esplora.\n\n**Nota:** Attualmente, alcune di queste API sono utilizzate con **tier gratuiti**, il che potrebbe comportare piccoli ritardi (ad esempio, un'attesa di 1 secondo dopo una geolocalizzazione). Se si desidera rimuovere queste limitazioni e migliorare le prestazioni (ad esempio, incrementando l'intelligenza dell'IA con API come quelle di OpenAI o Google Gemini), è possibile aggiornare i piani delle API. La flessibilità del codice, basata su `HttpRequest` di Java 11, permette di **modificare facilmente le API** con alternative a proprio piacere.\n\n---\n\n## 🚀 Installazione e Avvio\n\nPer far funzionare WAYpp sul tuo sistema, segui questi passaggi:\n\n1.  **Requisiti:**\n    * **Java Development Kit (JDK) 11 o superiore** installato.\n    * **Apache Maven** installato.\n    * **XAMPP** (o un ambiente equivalente con Apache e MySQL) installato e configurato.\n\n2.  **Configurazione del Backend (PHP \u0026 MySQL):**\n    * Clona questo repository:\n        ```bash\n        git clone [https://github.com/your-repo/WAYpp.git](https://github.com/your-repo/WAYpp.git)\n        cd WAYpp\n        ```\n    * **Database:** Importa lo schema del database MySQL fornito nella cartella `WAYpp/CODE/db/` (o dove si trova il tuo schema grafico). Assicurati che il database sia accessibile da XAMPP.\n        \u003cimg width=\"1225\" height=\"577\" alt=\"image\" src=\"https://github.com/user-attachments/assets/1349c4e0-e846-40de-816c-5cf6b5da64a3\" /\u003e\n    * **Server PHP:** Configura il server PHP all'interno del tuo ambiente XAMPP, posizionando i file del backend nella directory `htdocs/api` (Creala se non esiste) di XAMPP o configurando un virtual host.\n      Seguendo i file indicati nel percorso `WAYpp/CODE/server_php/`.\n    * **Avvia Apache e MySQL tramite XAMPP.**\n\n      \u003cimg width=\"700\" height=\"400\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ff5942a1-44fe-4115-a7ba-b6c09064ceff\" /\u003e\n\n3.  **Configurazione delle API e delle Variabili d'Ambiente:**\n    * Crea un file `.env` nella directory principale del progetto, copiandolo dal file `.env.example` fornito.\n        ```bash\n        cp .env.example .env\n        ```\n    * Apri il file `.env` e inserisci le tue chiavi API per GraphHopper, Maileroo, Geocoding, Groq, ect.\n\n4.  **Compilazione ed Esecuzione del Frontend (JavaFX):**\n    * Naviga nella directory principale del progetto (dove si trova il `pom.xml` di Maven).\n    * Compila il progetto Maven:\n        ```bash\n        mvn clean install\n        ```\n    * Esegui l'applicazione JavaFX:\n        ```bash\n        mvn javafx:run\n        ```\n    \u003e Hey non complicarti la vita usa un IDE 🫡\n\n---\n\n## 🤝 Contributi\n\nSiamo entusiasti di ricevere contributi, suggerimenti e miglioramenti al progetto! WAYpp è un software libero e la collaborazione è fondamentale per la sua crescita.\nSia che tu voglia correggere un bug, aggiungere una nuova funzionalità o migliorare l'interfaccia utente, ogni aiuto è ben accetto.\n\nNonostante il continuo diminuire dell'uso di JavaFX nell'ambito dello sviluppo di nuove applicazioni (cosa che ci spinge a essere sempre attenti alle nuove tendenze, ma non ci impedisce di apprezzarne la robustezza e le capacità per applicazioni desktop dedicate), crediamo che la sua integrazione in WAYpp sia solida e funzionale.\n\nRingraziamo sentitamente i seguenti contributori:\n\n* **gutroch**\n* **Diego D'Ortenzio**\n* E non ultimo, il nostro amico peloso **Rocky** 🐶!\n\n  \u003cimg width=\"400\" height=\"450\" alt=\"image\" src=\"https://github.com/user-attachments/assets/c156f147-857e-4885-8d1d-37c88e759e42\" /\u003e\n\n---\n\n## 📸 Galleria Foto\n\nEcco degli screenshot dell'app in azione!\n\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/8c4ad1a5-4491-45d9-90f8-244bce1ba0a2\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/249a309e-02a1-4e0a-bb96-62b23abd9a37\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ccca518e-78b8-4f4d-912e-a4d3ac250556\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/461dc9a0-5c34-4b01-9f30-5325cbc2fa9f\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/285da58c-24fd-4ac0-b1ca-685cf95eff56\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ccf368e5-2d0c-4911-87b1-640b655e2aab\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/61714a01-acb6-4f7a-a7a0-4242f9ed88bb\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/435fd021-586b-45da-b4ee-c138f57c37a2\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/b2590730-e883-4447-871e-4fb6899663e0\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/d573b65f-ab57-4263-957f-1b592c7fdcf3\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/8dde0dba-b1fb-4848-8e02-e30880c169ee\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/fadc6f5b-e5fa-4ed9-a96a-84399fc1be36\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/4ad5f47d-5dee-43bf-9ac1-d0ab346da7af\" /\u003e\n\u003cimg width=\"451\" height=\"366\" alt=\"image\" src=\"https://github.com/user-attachments/assets/1b549e60-05cd-40d3-9fa4-a6ecd3f9ace5\" /\u003e\n\n\n\n---\n\n## 📜 Licenza\n\nQuesto progetto è rilasciato sotto licenza [MIT License](https://github.com/DOrtenzio/WAYpp/blob/main/LICENSE).\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdortenzio%2Fwaypp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdortenzio%2Fwaypp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdortenzio%2Fwaypp/lists"}