000
Full-Stack Web Development & E-Commerce

Carnival Bambini

Un magazin online modern și elegant pentru modă infantilă de lux, dotat cu un coș de cumpărături complet funcțional, plăți Stripe, integrare Sanity CMS și mod dark/light.

Stivă tehnologicăNext.js 14 (App Router), Sanity CMS, TypeScript, Tailwind CSS, React, Stripe Payments, use-shopping-cart, next-themes
DomeniuE-Commerce & Retail
RolDezvoltator Full-Stack
Funcționalități de bază

Integrare Sanity CMS

Gestionarea dinamică a produselor folosind Sanity Headless CMS, permițând adăugarea, editarea și categorisirea ușoară a produselor cu imagini, descrieri și ID-uri de preț Stripe.

Experiență Completă a Coșului

Coș de cumpărături interactiv cu posibilitatea de adăugare/eliminare a produselor, ajustarea cantității, calcularea subtotalului și o interfață modală fluidă susținută de use-shopping-cart.

Integrare Plăți Stripe

Flux de plată securizat prin Stripe, incluzând plata pentru un singur produs sau pentru întregul coș, cu pagini dedicate pentru succes sau eroare.

Galerie de Produse și Categorii

Prezentarea celor mai noi produse, navigare pe categorii și pagini individuale de produs cu galerii de imagini.

Comutator Dark/Light Mode

Schimbarea adaptivă a temei cu next-themes, oferind opțiuni de design elegante pentru modurile dark și light cu tranziții fluide.

Design Responsiv

Layout responsiv de tip mobile-first cu animații personalizate, navigație dropdown, meniu mobil și carduri de produs optimizate pentru toate dimensiunile de ecran.

Carnival Bambini

Carnival Bambini a reprezentat primul meu contact cu domeniul e-commerce. Am inițiat acest proiect din dorința de a explora mecanismele interne ale gestionării de conținut headless și ale tranzacțiilor financiare securizate. Mai exact, am vrut să înțeleg cum gestionează Sanity CMS schemele complexe de produse și cum integrarea plăților Stripe poate fi implementată armonios într-o aplicație Next.js. Rezultatul este o platformă complet dinamică în care catalogul de produse este gestionat prin Sanity, în timp ce procesarea securizată prin Stripe asigură o experiență profesională și de încredere pentru utilizator.

Provocarea și soluția

Principala provocare a fost corelarea dintre un Headless CMS și un sistem de plată în timp real — asigurând sincronizarea datelor despre produse (precum ID-urile de preț Stripe) între Sanity și frontend. Am rezolvat acest lucru prin implementarea unei scheme structurate în Sanity care se mapează direct pe dashboard-ul Stripe, garantând integritatea datelor în timpul plății. În plus, gestionarea stării persistente a unui coș de cumpărături complex între diferite sesiuni a necesitat o implementare robustă a hook-ului use-shopping-cart, pe care l-am integrat cu Next.js 14 App Router pentru a menține o performanță ridicată și o interfață fluidă.

Galeria proiectului