Wszystkie projekty
🏂 SaaS · Multi-Tenant Platform

SportRental

Enterprise-grade platforma SaaS do wypożyczania sprzętu sportowego z architekturą multi-tenant

11 projektów w solucji
356 testów automatycznych
~50k linii kodu
Przewiń w dół
Klient Projekt własny
Branża Sports / Rental / SaaS
Czas trwania 12 miesięcy
Moja rola Full-Stack Architect
01

Przegląd projektu

SportRental to kompletna platforma SaaS dla wypożyczalni sprzętu sportowego (narty, rowery, sprzęt wodny). System składa się z 11 projektów w solucji, obsługuje wielu tenantów (wypożyczalni) z pełną izolacją danych. Architektura hybrydowa: Blazor Server dla panelu admina + Blazor WASM dla aplikacji klienckiej. Integracje: Stripe (płatności z depozytami), QuestPDF (umowy), SMSAPI.pl (powiadomienia SMS), Azure Blob Storage (pliki). Projekt zawiera 356 testów automatycznych i ~50,000 linii kodu.

🏢 Multi-tenant z EF Core Query Filters
💳 Stripe Checkout z obsługą depozytów
📄 Automatyczna generacja umów PDF (QuestPDF)
📱 Potwierdzanie wypożyczeń przez SMS
02

Wyzwanie

Wypożyczalnie sprzętu sportowego potrzebują centralnego systemu zarządzania produktami, klientami i wypożyczeniami z obsługą płatności online (w tym depozytów/kaucji). Dodatkowo wymagana jest multi-lokalizacja (jedna platforma dla wielu wypożyczalni), automatyzacja dokumentów i responsywny UI dostępny z każdego urządzenia. Tradycyjne rozwiązania są monolityczne i nie skalują się dla modelu SaaS.

  • Izolacja danych między wypożyczalniami (tenantami)
  • Obsługa depozytów i kaucji w płatnościach Stripe
  • Tymczasowe rezerwacje (holds) z TTL w koszyku
  • Real-time aktualizacje statusów między admin a klient
03

Rozwiązanie

Zaprojektowałem architekturę hybrydową Blazor Server + WASM z 11 projektami w solucji. Multi-tenancy zaimplementowane przez EF Core Global Query Filters z automatyczną filtracją po TenantId. Stripe Checkout Sessions obsługuje płatności z metadanymi depozytu. System ReservationHolds trzyma produkty w koszyku z TTL 20 minut. SignalR zapewnia real-time powiadomienia o zmianach statusu. QuestPDF generuje profesjonalne umowy PDF. Sekrety w Azure Key Vault (zero w kodzie). Testy: 356 automatycznych (unit, integration, E2E).

Wykorzystane technologie

.NET 10
Blazor Server
Blazor WASM
PostgreSQL
Entity Framework Core
Stripe
SignalR
QuestPDF
Azure Key Vault
Azure Blob Storage
TailwindCSS
MudBlazor
04

Rezultaty

11
projektów w solucji

Clean Architecture z podziałem odpowiedzialności

356
testów automatycznych

Unit, Integration, E2E - 100% passing

~50k
linii kodu

Production-ready codebase

Architektura multi-tenant z Query Filters zapewnia pełną izolację danych bez modyfikacji zapytań. Hybrydowe podejście Blazor Server + WASM łączy zalety obu technologii - szybki admin panel i offline-capable aplikacja kliencka.
Damian Tarnowski Architect & Developer

💬 Komentarze (0)

?

Zostaw komentarz

💭

Bądź pierwszy, który skomentuje!

🚀

Masz podobny projekt?

Porozmawiajmy o tym, jak mogę pomóc Twojej firmie osiągnąć podobne rezultaty.

Asystent AI Damiana

Online • Odpowiadam natychmiast

Cześć! 👋

Jestem asystentem AI Damiana. Zapytaj mnie o technologie, projekty lub jak mogę Ci pomóc!

Powered by GPT-5.6 • Odpowiedzi mogą zawierać błędy

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please reload the page.