Ülesanne

RYVIA 3D ei olnud mõeldud demoleheks, vaid päris 3D-printimise tellimisteenuseks. Kasutaja peab saama registreeruda, e-posti kinnitada, fotosid ja 3D-mudeleid üles laadida, hinnangut saada, müüjaga suhelda ning tellimuse olekut jälgida.

Arhitektuur

Projekt sai Node.js backendi, PostgreSQL-i ja privaatse failisalvestuse. Kasutajaliides töötab ühe rakendusena koos kliendikonto ja administraatori osaga.

  • Render — backendi käitamine;
  • Neon PostgreSQL — andmebaas;
  • Cloudflare R2 — privaatsed tellimusfailid;
  • ClamAV — üleslaaditud failide skannimine;
  • Resend — kinnituse ja parooli taastamise e-kirjad.

Turvalisus ja failid

Tellimuse faile ei saanud paigutada avalikku kausta. Kasutame privaatset salvestust, serveripoolset failitüübi kontrolli ja viirusetõrjet. Administraatori ligipääsule lisati MFA.

Production-projekt peab käsitlema ka veajuhtumeid: kättesaamatu salvestus, vale fail, saatmata e-kiri või ebaõnnestunud üleslaadimine.

Viimane etapp

Pärast funktsionaalseid teste lisasime mobiilivaate parandused, HTTPS-domeeni, e-posti kohaletoimetamise ja SEO seadistused. Eraldi testiti registreerimist, failidega tellimust, kliendikontot ja administraatori töövoogu.

Mida see case study näitab

RYVIA 3D näitab KAMERTONi jaoks hästi, et frontend on vaid üks osa päris veebiteenusest. Vaja on andmebaasi, failihaldust, turvalisust, integratsioone, deploy'd ja testimist.

Vajad sarnast veebiteenust?

Arutame ülesannet, vajalikke funktsioone ja sobivat teostusviisi.

Loe case study’d →