
Verkkokauppasovellus
Sami Paananen / 1.10.2024
Tämä projekti on verkkokauppasovellus, joka kehitettiin MERN (MongoDB, Express, React, Node) -stackillä. Projektin tarkoituksena oli vastata energiatehokkaiden ratkaisujen kasvavaan kysyntään verkkokaupassa. Kehitysprosessin aikana käytimme ketteriä menetelmiä ja hyödynsimme Scrum-mallia.
Ominaisuudet
- Täysin toimiva verkkokauppa: Kokonainen verkkokauppa, jossa on tuotelistat, suodatus ja ostoskoriominaisuudet.
 - Käyttäjän rekisteröityminen: Sisältää salasanan vahvuusindikaattorin, joka päivittyy reaaliajassa.
 - Tuotteiden suodatus: Käyttäjät voivat suodattaa tuotteita kategorioiden perusteella tai tehdä tekstihakuja.
 - JWT-autentikointi: Varmistaa käyttäjien turvallisen kirjautumisen ja autentikoinnin.
 - Ostoskori esikatselulla: Käyttäjät voivat nähdä ostoskorin sisällön ennen maksutapahtumaa.
 - Tykkäykset: Käyttäjät voivat lisätä tuotteita suosikkeihinsa.
 - Monivaiheinen maksuprosessi: Rakenne, jossa käyttäjä käy läpi useita vaiheita maksuprosessin aikana.
 - Tilausten/Kuittien tallennus: Kaikki tilaukset ja kuitit tallennetaan tietokantaan myöhempää tarkastelua varten.
 
Teknologiat
- MongoDB: NoSQL-tietokanta, jota käytettiin tuotteiden, tilausten ja käyttäjätietojen tallentamiseen.
 - Express: Backend-kehys, joka käsittelee API-pyyntöjä ja reititystä.
 - React: Frontend-kehys, jolla rakennettiin responsiivinen ja dynaaminen käyttöliittymä.
 - Node.js: Ajoympäristö, jota käytettiin palvelinpuolen kehitykseen.
 - JWT: JSON Web Token -tunnuksia käytettiin autentikointiin ja käyttäjäistuntojen hallintaan.
 - Nodemailer: Kirjasto, jota käytettiin sähköpostien lähettämiseen, kuten tilausvahvistuksiin.
 
Oma kehitys
Tässä projektissa opin paljon verkkokaupan perustamisesta ja Scrum-metodologian hyödyntämisestä ohjelmistokehityksessä. Ohjelmointiosaamiseni kasvoi erityisesti Reactin ja Noden parissa, ja sain käytännön kokemusta sekä frontend- että backend-kehityksestä. Opin myös JWT:n käytöstä autentikoinnissa ja Nodemailer-kirjaston hyödyntämisestä sähköpostitoiminnoissa.
Yhteenveto
Tämä verkkokauppasovellus tarjosi kattavan kokemuksen täyspino-kehityksestä käyttäen MERN-stackiä. Projekti antoi arvokkaita näkemyksiä koko ohjelmistokehityksen elinkaaresta, suunnittelusta ja ohjelmoinnista aina käyttöönottoon ja testaukseen asti. Käytännön kokemus frontend- ja backend-teknologioista on hyödyllistä tulevissa verkkosovellusprojekteissa.