#Best tips and must-have things to go live (production)

1 messages · Page 1 of 1 (latest)

reef wolf
#

Howdy, i have a Next.js project, using Prisma + Supabase for Db (pgsql) with supavisor pooler and Supabase auth and storage. I send emails with SMTP but im switching to Resend now. I use Upstash QStash for emails. Im hosting on Vercel now.

What do i need to change or maybe providers i need to replace for a production product? We'll have around 1000/5000 daily users using the app.

fervent dewBOT
#

Hi @reef wolf. I'm kapa.ai, your friendly support bot. I will try to answer your question by searching through the knowledge base. :wave:

#

Based on the provided sources, there isn’t guidance specific to your exact stack (Prisma + Supabase + QStash + Resend), but there is clear direction on what to check before going to production with a Next.js app on Vercel.

Here are the must‑do items that are explicitly covered:

1. Run a production build locally

Before launch:

  • Run next build to catch build‑time errors.
  • Run next start to test behavior and performance in a production‑like environment. [App checklist; Pages checklist]

2. Performance & Core Web Vitals

  • Use Lighthouse in an incognito window to check Core Web Vitals and identify bottlenecks. [App checklist]
  • Enable Vercel Speed Insights to monitor real‑user performance and TTFB after you deploy. [Vercel performance]
  • Use @next/bundle-analyzer to inspect bundle size and trim heavy dependencies. [App checklist]

3. Image, script, and font optimization

  • Ensure you’re using:

4. Database & storage best practices

#

Even though your DB is Supabase (Postgres), the same principles apply:

  • Place your database in a region close to your Vercel Functions to minimize latency. [Storage best practices]
  • Use connection pooling (you already use Supavisor, which is good for serverless). [Storage best practices]
  • Consider caching where appropriate:
    • Vercel Data Cache / CDN cache headers for read‑heavy endpoints.
    • Redis (e.g., Upstash) for frequently accessed, periodically changing data. [Storage best practices]

5. Email sending (SMTP → Resend)

Vercel recommends using third‑party email providers instead of raw SMTP from Functions:

  • Use a provider like Resend, SendGrid, SES, etc., and call their HTTP APIs from your Vercel Functions instead of relying on SMTP. [SMTP guide; Email guide]
  • If you do use SMTP anywhere, ensure you await the send call inside the Function so it completes before the response is returned. [SMTP guide]

Your move to Resend + QStash is aligned with these recommendations; there’s nothing in the sources suggesting you must replace them for production.

6. Vercel production checklist (high‑level)

Vercel’s production checklist highlights additional areas to review:

#
  • Reliability
    • Use caching headers or ISR appropriately to reduce load and improve resilience. [Vercel reliability]
    • Consider tracing/observability for debugging production issues. [Vercel reliability]
  • Performance
  • Cost optimization
    • Tune function duration/memory and ISR revalidation times.
    • Move large media to blob/object storage. [Vercel cost]

7. Security & operational basics

From the Vercel production checklist:


The knowledge sources don’t prescribe specific replacements for Supabase, QStash, or Resend; they focus on how to run your Next.js app on Vercel in production. Your current provider choices are compatible; the key is to apply the above performance, reliability, security, and email‑sending best practices as you scale to 1–5k daily users.

Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:

#

@reef wolf Kapa.ai is still learning and improving, please let me know how I did by reacting below.