← Tilbake til prosjekter Webapplikasjon · Biler

Car Market Node.js

En markedsplass for kjøretøy med søk, filtrering og detaljerte oppføringer.

Car Market Node.js
PROSJEKT

Prosjektet

Car Market er en nettapplikasjon bygget rundt en bilkatalog, med søk, filtrering og detaljerte bilsider. Den demonstrerer en moderne arkitektur med responsivt design og intuitiv navigasjon.

Systemarkitektur & Hovedpilarer

Car Market kombinerer et uavhengig Node.js & Express REST-API med en lynrask React (Vite) Single Page Application, og leverer filtrerte bilsøk på under ett sekund samt en sømløs salgsprosess.

┌─────────────────────────────────────────────────────────────────────────────┐
│                    Car Market Full-Stack Architecture                       │
└──────────────────────────────────────┬──────────────────────────────────────┘
                                       │
           ┌───────────────────────────┼───────────────────────────┐
           ▼                           ▼                           ▼
  🔍 Intelligent søkemotor       📸 Medie- & forhandlerportal       🛡️ Sikkerhet & GDPR-samsvar
  • Databasekoblede glidebrytere      • Dra-og-slipp inntil 15 bilder      • Moderasjonskø for annonser
  • Merke ➔ Modell kaskadevelger      • Valg av forsidebilde med SortableJS   • Full inspeksjonsvisning for bil
  • Forhindring av tomme resultatsider      • Automatisk WebP-konvertering (Sharp)        • GDPR Artikkel 17 & 20
  • Sanntids lagertelling      • Innbygging av YouTube & Shorts       • JWT- & Bcrypt-sikkerhet
            

Sanntids bilsøk

Umiddelbar asynkron multikriteriefiltrering uten at nettsiden må lastes inn på nytt.

Automatisert optimalisering

Masseopplasting av bilder med dra-og-slipp-sortering og serverside WebP-komprimering.

Europeisk GDPR-samsvar

Eksport av profildata til JSON med ett klikk og permanent fysisk sletting av kontoer og filer fra serveren.

1. Intelligent søkemotor & Dynamiske filtre

Søkemotoren beregner grenseverdier dynamisk fra MySQL-databasen for å unngå resultatløse søk:

  • Databasekoblede doble glidebrytere (rc-slider): Pris-, Kilometer- og Årsmodell-glidebryterne justerer seg automatisk etter de reelle minimums- og maksimumsverdiene i varelageret.
  • Kaskadekoblede Merke ➔ Modell-velgere:
    • Ingen tomme resultater: Nedtrekksmenyen viser utelukkende merker og modeller som for øyeblikket har godkjente biler på lager.
    • Live antallsmerker: Sanntidsteller for tilgjengelige biler ved siden av hvert valg (f.eks. Renault (4) ➔ Clio V (2)).
  • Tekniske spesifikasjonsfiltre: Filtrering etter kjøretøykategori (Personbil, Motorsykkel, Varebil), karosseritype, drivstofftype og girkasse.
  • Asynkron sortering: Umiddelbar sortering etter publiseringsdato, pris stigende/synkende, kilometerstand eller årsmodell.

2. Detaljert kjøretøyside & Multimedieopplevelse

Kjøretøysiden (/vehicule/:slugOrId) er bygget i et konverteringsfokusert to-kolonners oppsett:

Interaktivt mediegalleri

Innbygging av YouTube-videoer og Shorts i første posisjon i bildekarusellen, etterfulgt av høyoppløselige WebP-bilder.

Teknisk spesifikasjonsoversikt

Slagvolum (cm³), hestekrefter (hk), drivstofforbruk, utslippsstandard (Euro 1 til 7), understellsnummer (VIN), antall dører og seter.

Direkte selgerkontakt

Internasjonalt telefonformat med direkte tel:-ringelenke og integrert henvendelsesskjema koblet til bilens ID.

3. Annonseopprettelse & Bildebehandlingsflyt

Car Market gir private og profesjonelle selgere intuitive og effektive verktøy:

  • Komplett kjøretøytaksonomi (120 merker & 1 890+ modeller): Omfattende bilkatalog tilgjengelig under opprettelsen for presis klassifisering.
  • Obligatorisk profilverifisering: Publisering holdes tilbake inntil selgeren har fylt ut alle obligatoriske profildata (navn, bekreftet telefonnummer).
  • Bildeorganisering med dra-og-slipp (SortableJS): Last opp inntil 15 bilder samtidig og dra forhåndsvisningsbildene for å angi forsidebilde ⭐ Forside.
  • Automatisk WebP-konvertering (Sharp): Konvertering på serveren til det moderne .webp-formatet ved 80 % komprimering med automatisk korrigering av EXIF-rotasjon.
  • «Mine annonser»-dashbord: Omfattende kontrollpanel med statusfaner (Alle, Aktive, Til vurdering), direkte redigering og sletting.

4. Kvalitetssikring & Administratormoderasjon

For å eliminere spam og uriktige oppføringer har plattformen et administrativt godkjenningssystem:

Moderasjonskø

Nyopprettede annonser settes på vent inntil de er manuelt godkjent av en administrator.

Fullstendig inspeksjonsvisning

Egen kontrollside (/admin/vehicule/:id) for å zoome inn på bilder, verifisere VIN og sjekke selgerinformasjon.

Ett-klikks handlinger

Sikre API-endepunkter for godkjenning, avvisning, deaktivering eller direkte redigering av annonser.

5. Bedriftssikkerhet & Europeisk GDPR-samsvar

Car Market følger EUs personvernforordning (GDPR EU 2016/679) fullt ut:

  • Tilstandsløs JWT-autentisering: Sikre Bearer-tokens med Bcrypt-passordhashing (minimum 8 tegn, store/små bokstaver, tall og spesialtegn).
  • Dataportabilitet (Artikkel 20 GDPR): Strukturert JSON-eksport av alle profildata og full annonsehistorikk med ett enkelt klikk.
  • Rett til sletting (Artikkel 17 GDPR): Permanent kontosletting som fjerner alle databaserader og sletter alle fysiske bildefiler fra serveren.

6. Teknisk funksjonsmatrise

Funksjon Teknisk gjennomføring SEO- & Ytelsesfordel
Dynamiske glidebrytere rc-slider + Prisma DB Aggregations Høyt engasjement Lynrask filtrering uten ny sidelasting
Kaskadekatalog Prisma vehicles: { some: { isApproved: true } } Kvalitetsinnhold Forhindrer at tomme søkeresultatsider indekseres
Bildeoptimalisering Sharp Node.js library to WebP 80% Core Web Vitals Rask First Contentful Paint (FCP) lastetid
Videointegrasjon Responsive 16:9 YouTube iframe embeds Brukertid på siden Øker brukernes gjennomsnittlige øktvarighet på nettstedet
URL-slugs slugify with unique ID suffixes Indekserbarhet Søkemotorvennlige og lesbare nettadresser med relevante søkeord
Sikkerhet & Personvern JWT Tokens + Bcrypt + GDPR Art. 17 & 20 GDPR-samsvar Full overholdelse av europeiske lovkrav

Test den operative plattformen

Prøv søkefiltrene, annonsehåndteringen og det responsive designet i praksis.

Gå til live-applikasjonen ↗