Vercel is the recommended hosting platform for TuPerfil.net. It auto-detects Next.js 14, handles the App Router’s server and client components correctly, and deploys automatically on every push toDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/santiagodc8/tu_perfil.net/llms.txt
Use this file to discover all available pages before exploring further.
main.
Import the repository in Vercel
- Go to vercel.com and log in.
- Click Add New → Project.
- Select your GitHub repository from the list and click Import.
next build), or output directory.Add environment variables
Before clicking Deploy, scroll down to Environment Variables on the project configuration screen and add all required variables:
You can also add or update these after deployment via Project → Settings → Environment Variables.For optional variables (
| Name | Value | Environments |
|---|---|---|
NEXT_PUBLIC_SUPABASE_URL | Your Supabase project URL | Production, Preview, Development |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Your anon public key | Production, Preview, Development |
SUPABASE_SERVICE_ROLE_KEY | Your service role key | Production, Preview, Development |
RESEND_API_KEY | Your Resend API key | Production, Preview, Development |
ADMIN_EMAIL, RESEND_FROM_EMAIL, NEWSLETTER_SECRET) that enable contact email notifications and secure unsubscribe links, see the environment variables reference.Continuous deployment
After the initial setup, every push to themain branch triggers a new production deployment automatically. Pull requests generate isolated preview deployments with a unique URL, useful for reviewing changes before merging.
Environment variables after deployment
To update environment variables on an existing deployment:- Go to your project in the Vercel dashboard.
- Click Settings → Environment Variables.
- Edit or add variables as needed.
- Redeploy the project for changes to take effect — existing deployments do not pick up new variable values automatically.
Incremental Static Regeneration
The homepage uses ISR with a 60-second revalidation window. After publishing a new article in the admin panel, the homepage may serve cached content for up to 60 seconds before reflecting the change. This is by design — it keeps response times fast under traffic while staying close to real-time. Category listing pages and individual article pages userevalidate as well. Refer to the relevant page.tsx files for their specific values.
Custom domain
To use a custom domain (e.g.tuperfil.net):
- Go to Project → Settings → Domains in the Vercel dashboard.
- Add your domain and follow the DNS instructions.
- Update the Site URL and Redirect URLs in your Supabase project under Authentication → URL Configuration to include the new domain. Without this, Supabase authentication callbacks will fail on the custom domain.
Image optimization
Next.js image optimization is pre-configured to allow images from Supabase Storage. Thenext.config.mjs already includes the required remote pattern:
next.config.mjs
<Image> component to optimize any image served from your Supabase Storage bucket.