Zurück zu Projekten
Fullstack2024Highlight

Fullkala — Multi-Tenant iranische E-Commerce-Plattform

Full-Stack Multi-Shop-E-Commerce-Plattform (Storefront, Admin, Landing, API) als Turborepo-Monorepo—Next.js 16, NestJS, Prisma/PostgreSQL und Spree Commerce für Katalog, Warenkorb und Checkout.

  • Next.js 16
  • React 19
  • NestJS
  • TypeScript
  • Prisma
  • PostgreSQL
  • Spree Commerce
  • Turborepo
  • pnpm
  • Tailwind CSS
  • Server Actions
  • next-intl
  • TanStack Query
  • Zod
  • Socket.io
  • Stripe
  • Docker
  • Playwright
  • Vitest
  • AWS S3
Fullkala — Multi-Tenant iranische E-Commerce-Plattform — 1

Überblick

Was gebaut wurde

Headless Multi-Tenant-Commerce-Plattform mit Kunden-Storefront, Admin-Dashboard, Marketing-Landing und NestJS-REST-API.

Next.js App Router + Server Actions im Frontend; NestJS + Prisma/PostgreSQL für Plattformdienste (Auth, Tenants, CMS, Versand, KI); Spree Commerce für Katalog, Warenkorb und Checkout via @spree/sdk.

Subdomain-basierte Shop-Isolation (JWT tenantId), gemeinsamer CMS/Page-Builder, Persisch i18n/RTL, Payments (Stripe, PayPal, Adyen + lokal/BNPL), Socket.io-Realtime und S3-kompatible Medien—als pnpm + Turborepo-Apps (web, admin, landing, api) mit Shared Packages für Database, Validators, Types, Page-Builder, Config, Logger und UI.

01

Herausforderungen

Multi-Shop-Tenants isolieren ohne Infrastruktur-Duplikation; schnelle Turborepo-DX über vier Apps; headless Spree-Katalog/Warenkorb/Checkout an NestJS-Plattformdienste anbinden; Persisch RTL/i18n, CMS-Page-Builder, Payments und Admin-Analytics als kohärente Produktfläche liefern.

02

Lösungen

Modulares NestJS (Controller/Services) mit Prisma/PostgreSQL und Subdomain + JWT-tenantId-Isolation; Next.js-16-/React-19-Storefront mit Server Components, Server Actions, Suspense und Spree via @spree/sdk; Admin mit TanStack Query/Table, React Aria und Recharts; geteilte Zod-Contracts und Page-Builder-Paket; Stripe/PayPal/Adyen (+ lokal BNPL); Socket.io-Realtime; Biome, Vitest, Playwright, Docker, Sentry und S3-kompatibler Speicher.