- Supabase on the backend (REST APIs are a solved problem, no need to spend a single hour on it)
- Auth0 for authentication (too risky to manage authentication manually)
- react + react-admin SPA on the frontend (does 80% of the job for B2B apps)
- lambda functions (for business logic that can't be exposed on the frontend)
API-centric SPAs are such a time saver... when you don't have to build the API, and Supabase covers it.
For a B2C app, you must render server-side. I'd go with:
- Postgres - Next.js or Remix - Prisma