Skip to content
Sylvain Joffraud l4w

2026 — present

Datspot

Co-founder · NestJS · Flutter Developer

Industry
Events · Marketplace · Payments
Team
1 people
Location
Nantes · Full-remote

Pay-per-entry event marketplace, as co-founder: NestJS API, Flutter app, Stripe Connect, from scratch to V1.

At a glance

  • NestJS/TypeScript API: 27 modules, 170 endpoints, 35 Prisma models, 998 Jest tests
  • Flutter iOS/Android app: QR code scanning at the door with offline mode, about 1,500 tests
  • Stripe Connect payments: tickets, promoter commissions, payouts to organizers
  • Critical flaw caught before launch: no Stripe sale was attributed to its promoter
  • GitHub Actions CI on a self-hosted runner, iOS/Android builds, Next.js landing page

Mobile app for performance-based event promotion: a promoter only gets paid when someone they brought actually enters the event, validated by scanning a unique QR code at the door.

Context

Co-founder and sole developer on the product: I own the technology, my partner the product vision and the business model. Figma mockups from a dedicated design system.

Starting point (January 2026): a V1 specification and mockups, no code at all.

Goal: ship a production-ready V1 on iOS and Android — event creation, promoter links, ticket purchase, door scanning, commissions and payouts — on a reliable payment flow.

Stack: NestJS/TypeScript API with Prisma and PostgreSQL (Supabase), Flutter mobile app (Riverpod, go_router), Stripe Connect payments, Next.js landing page, GitHub Actions CI, Docker deployment on Render, Vercel then Coolify.

Achievements

  • NestJS API: 27 business modules, 170 REST endpoints, 35 Prisma models, JWT authentication through Supabase
  • Flutter iOS/Android app: pixel-perfect Figma mockups, QR code scanning at the door with offline mode
  • Stripe Connect payments: tickets, promoter commissions, payouts to organizers, direct charges setup chosen after analysis
  • Business model audit against the code: critical flaw caught before launch (no Stripe sale attributed to its promoter); 7 costed recommendations, all adopted with my partner
  • Tests: 998 Jest tests across 76 back-end suites, all green; about 1,500 Flutter tests
  • Industrialization: GitHub Actions CI split by scope (back end, mobile, landing) on a self-hosted runner, automated iOS and Android builds, secret scanning with gitleaks
  • Next.js landing page and transactional e-mails (Resend)
  • Work split into issues and small tested PRs, documented decisions and execution plans

Results

  • Product built from scratch by a single developer: 936 commits, about 16,000 lines of TypeScript for the API and 100,000 lines of Dart for the mobile app in nine months
  • Safety net in place before launch: nearly 1,000 back-end tests and about 1,500 mobile tests
  • A flaw that would have deprived every promoter of their commissions identified and fixed before going to production
  • Payment decisions settled on costed analysis (Stripe Connect fees, closing delays, disputes): all 7 recommendations adopted as they stood
NestJS TypeScript Flutter PostgreSQL Stripe Connect Next.js
View project

Need something similar?

Let's talk about your project and how I can help, fully remote.