SkillTrade è una piattaforma di scambio di abilità che consente alle persone di scambiare le proprie conoscenze e competenze. L'app permette agli utenti di offrire i propri servizi in cambio di lezioni o servizi forniti da altri utenti. SkillTrade offre un modo semplice per imparare nuove competenze, conoscere persone con interessi simili e valorizzare le proprie abilità.
-
Creazione del profilo: Gli utenti possono registrarsi e creare un profilo indicando le loro abilità e interessi. Possono anche caricare una foto profilo e fornire una breve descrizione di sé stessi.
-
Cerca e scopri: Gli utenti possono cercare abilità specifiche che desiderano imparare e visualizzare gli utenti che offrono tali servizi. La piattaforma offre filtri per affinare la ricerca in base alla posizione, al livello di abilità, alla disponibilità di tempo, ecc.
-
Pubblica le tue abilità: Gli utenti possono creare post che contengono informazioni riguardo la competenza specifica che desiderano insegnare. Inoltre, sull'annuncio stesso, vengono evidenziati anche gli interessi di chi offre il servizio, in modo da garantire una maggiore chiarezza e facilità nel processo di scambio.
-
Messaggistica e negoziazione: Gli utenti possono inviare messaggi direttamente tramite l'app per discutere i dettagli dello scambio. Possono negoziare i termini dell'accordo, come la durata e le date delle lezioni, il luogo di incontro e altri aspetti rilevanti.
-
Recensioni e valutazioni: Dopo aver completato uno scambio, gli utenti possono lasciare recensioni e valutazioni sugli altri utenti con cui hanno interagito. Ciò contribuisce a creare un ambiente di fiducia e a fornire informazioni utili ad altri utenti interessati a impegnarsi in uno scambio simile.
-
Storico delle attività: Gli utenti possono accedere a un elenco delle attività passate, inclusi gli scambi completati e le conversazioni precedenti. Ciò consente loro di tenere traccia dei progressi e delle esperienze pregresse.
Parte | Tecnologia usata | Per cosa si è utilizzata |
---|---|---|
Back End | Java + Spring Boot | Creare le entità che rappresentano i dati dell'applicazione e mapparle sul database usando JPA e Hibernate. Creare un sistema di autenticazione e autorizzazione basato su token JWT che garantisca la sicurezza e la protezione dei dati degli utenti. Creare diversi endpoint per la API che permettano di gestire i dati tramite operazioni CRUD (Create, Read, Update, Delete). Sfruttare le funzionalità di Spring Boot come il boilerplate iniziale, la gestione delle dipendenze, la persistenza e la creazione automatica di database e tabelle. |
Back End | PostgreSQL | Creare il database del progetto e visualizzare i dati e le tabelle |
Back End | Postman | Creare e inviare delle richieste HTTP a diversi endpoint della API usando vari metodi, parametri, header e body. Ricevere e analizzare le risposte HTTP dalla tua API usando formato JSON, visualizzando codici di stato, header e body. Creare delle collezioni di richieste e delle variabili di ambiente per organizzare e semplificare il lavoro. |
Front End | React | Creare componenti riutilizzabili e modulari che rappresentano le parti dell'interfaccia grafica. Gestire lo stato dei componenti e aggiornare la pagina in modo efficiente senza ricaricarla. Usare il JSX per scrivere il codice HTML e JavaScript in modo semplice e intuitivo. Integrare altre librerie di terze parti e strumenti |
Front End | Bootstrap | Usare una griglia flessibile per organizzare il layout della pagina in modo adattabile a diversi dispositivi e dimensioni dello schermo. Usare dei componenti predefiniti e personalizzabili come bottoni, navbar, card, modali e molti altri per creare una interfaccia grafica coerente e funzionale. Usare delle classi di utilità per modificare facilmente lo stile degli elementi senza scrivere codice CSS. |
Front End | npm | Installare e aggiornare le librerie e i pacchetti utilizzati nel progetto (react-masonry-css, react-select, react-star-rating) comando npm install. Creare e modificare il file package.json che contiene le informazioni e le configurazioni del progetto. Creare e eseguire degli script personalizzati per operazioni come avviare il server usando il comando npm run. |
Front End | vite | Creare un progetto React con un solo comando usando il template (boilerplate) vitejs/template-react. (alternativa moderna a create-react-app) Avviare un server di sviluppo con hot module replacement (HMR) che ricarica i tuoi cambiamenti in tempo reale senza perdere lo stato dei componenti |
Link alla repository backend 👉BackEnd Repository