{"id":22150389,"url":"https://github.com/arashabe/springmvcwebapp","last_synced_at":"2026-04-11T04:32:49.172Z","repository":{"id":265514001,"uuid":"858196725","full_name":"arashabe/SpringMVCWebApp","owner":"arashabe","description":"Una Web App per il corso di Progettazione, Algoritmi e Computabilità che consente agli utenti di registrarsi, accedere, aggiornare il profilo e ricevere notifiche per formare gruppi di studio con interessi comuni. La piattaforma utilizza Spring Framework, un database embedded H2 e adotta il pattern MVC.","archived":false,"fork":false,"pushed_at":"2025-01-14T07:26:54.000Z","size":3401,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-24T13:11:25.258Z","etag":null,"topics":["h2-database","jpa-hibernate","junit-mockito","junit5","mvc-pattern","playwright","postman","spring-boot","spring-mvc","spring-security","unibg","user-authentication","web-application"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arashabe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-09-16T13:33:27.000Z","updated_at":"2025-01-14T07:26:57.000Z","dependencies_parsed_at":"2024-11-29T18:37:30.694Z","dependency_job_id":null,"html_url":"https://github.com/arashabe/SpringMVCWebApp","commit_stats":null,"previous_names":["arashabe/springmvcwebapp"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/arashabe/SpringMVCWebApp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arashabe%2FSpringMVCWebApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arashabe%2FSpringMVCWebApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arashabe%2FSpringMVCWebApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arashabe%2FSpringMVCWebApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arashabe","download_url":"https://codeload.github.com/arashabe/SpringMVCWebApp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arashabe%2FSpringMVCWebApp/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268348647,"owners_count":24236298,"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-08-02T02:00:12.353Z","response_time":74,"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":["h2-database","jpa-hibernate","junit-mockito","junit5","mvc-pattern","playwright","postman","spring-boot","spring-mvc","spring-security","unibg","user-authentication","web-application"],"created_at":"2024-12-02T00:15:31.034Z","updated_at":"2025-12-30T21:51:53.924Z","avatar_url":"https://github.com/arashabe.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SpringMVCWebApp\n\n- Il corso di [**Progettazione, algoritmi e computabilità**](https://unibg.coursecatalogue.cineca.it/insegnamenti/2022/38090-MOD1/2021/3212/89?coorte=2022\u0026schemaid=68843) per l'anno accademico **2023/2024**.\n- Docente: Prof.ssa Patrizia Scandurra\n- Sviluppatori: **Arash Abedi** \u0026 **Daniele Alberti**\n\n\n\n## Descrizione del Progetto\n\nUna web app progettata per facilitare la comunicazione e la collaborazione tra studenti universitari. Gli utenti possono registrarsi, fare login, aggiornare i loro profili e inviare notifiche per formare gruppi di studio basati su interessi comuni. Il sistema non gestisce direttamente gli studenti, ma permette loro di interagire e organizzarsi autonomamente in gruppi di studio.\n\n## Caratteristiche Principali\n\n- **Registrazione e Login**: Gli utenti possono creare un nuovo account o accedere con le credenziali esistenti.\n- **Aggiornamento Profilo**: Gli utenti possono modificare le informazioni del loro profilo.\n- **Notifiche**: Gli utenti possono inviare e ricevere notifiche per creare e unirsi a gruppi di studio.\n- **Gestione Gruppi di Studio**: Gli utenti possono formare gruppi di studio basati su interessi comuni e collaborare con altri membri del gruppo.\n\n## Tecnologie Utilizzate\n\n- **Spring Boot**: Framework per lo sviluppo di applicazioni Java basate su Spring.\n- **Spring Security**: Per la gestione della sicurezza e dell'autenticazione.\n- **Thymeleaf**: Motore di template per la generazione di pagine web.\n- **Bootstrap**: Un framework HTML, CSS e JavaScript più popolare per sviluppare siti web responsivi e mobile-first. \n- **H2 Database**: Database embedded per lo sviluppo e il test.\n- **JUnit**: Framework per la scrittura di test unitari.\n- **Playwright**: Un framework per il test e l'automazione web. Permette di testare Chromium, Firefox e WebKit utilizzando un'unica API.\n- **Postman**: Una piattaforma per sviluppatori che facilita il testing, lo sviluppo e la documentazione delle API tramite un'interfaccia intuitiva.\n- **Maven**: Sistema di gestione dei progetti e delle dipendenze.\n\n## Modello di Sviluppo\n\nIl progetto è stato sviluppato utilizzando il **modello di sviluppo Agile**. In particolare, abbiamo adottato il modello Agile in coppia. Abbiamo lavorato insieme in modo iterativo e incrementale per garantire una consegna continua di valore e una risposta rapida ai cambiamenti nei requisiti.\n\n### Caratteristiche del Modello Agile Utilizzato\n\n- **Iterazioni Brevi**: Sviluppo in cicli brevi per garantire feedback frequente e miglioramenti continui.\n- **Collaborazione Stretta**: Lavoro a stretto contatto tra i programmatori per risolvere rapidamente i problemi e migliorare il prodotto.\n- **Adattamento ai Cambiamenti**: Capacità di adattarsi ai cambiamenti nei requisiti e nelle condizioni del progetto.\n- **Focus sul Valore**: Concentrarsi sulla consegna di valore reale e tangibile agli utenti finali.\n\n## Istruzioni per l'Esecuzione del Progetto\n\n1. **Clonare il Repository**: Utilizzare git clone per clonare il repository sul proprio ambiente locale.\n2. **Importare il progetto in STS**: Aprire Spring Tool Suite (STS) e importare il progetto come Maven Project.\n3. **Installare le Dipendenze**: Una volta importato, STS scaricherà automaticamente le dipendenze del progetto.\n4. **Avviare l'applicazione**: selezionare Run As \u003e Spring Boot App per avviare l'applicazione.\n5. **Accedere all'applicazione**:Aprire il browser e navigare su http://localhost:8080.\n\n## Indice\n\n- [Introduzione](Documentazione/Introduzione.md)\n- [Specifiche dei Requisiti](Documentazione/Documento%20di%20Specifica%20dei%20Requisiti%20Software.md)\n- [Design dell'Architettura](Documentazione/Documento%20di%20Design%20dell%E2%80%99Architettura%20Software.md)\n- [Documento per l’Analisi Dinamica](Documentazione/Documento%20per%20l%E2%80%99Analisi%20Dinamica%20Junit.md)\n- [Documento di Testing delle API con Postman](Documentazione/Documento%20di%20Testing%20delle%20API%20con%20Postman.md)\n- [Documento per l’Analisi Statica](Documentazione/Documenti%20per%20l%E2%80%99Analisi%20Statica.md)\n- [Documentazione sui Test End-to-End con Playwright](Documentazione/Documentazione%20sui%20Test%20End-to-End%20con%20Playwright.md)\n- [Demo del Progetto](Documentazione/demo.md)\n\n\n\n\n   \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farashabe%2Fspringmvcwebapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farashabe%2Fspringmvcwebapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farashabe%2Fspringmvcwebapp/lists"}