MODULO 6.7 - FINAL

🏁 Deploy Final

O ultimo modulo da Imersao Vibe Coding. App publicada com landing page, billing, logs e monitoramento. Seu SaaS vai ao ar.

6
Topicos
90
Minutos
Avancado
Nivel
Projeto
Tipo
1

✅ Checklist de Deploy

Deployar sem um checklist e pedir para algo dar errado. A diferenca entre um deploy tranquilo e um deploy catastrofico geralmente se resume a uma variavel de ambiente esquecida, uma migracao de banco pendente, ou uma dependencia desatualizada. Um checklist de pre-deploy elimina 90% dos problemas antes que eles acontecam.

Esse checklist nao e burocracia. E a diferenca entre "deployei e esta funcionando" e "deployei e os usuarios estao vendo pagina em branco". Cada item existe porque alguem, em algum momento, esqueceu de verificar e pagou o preco. Trate o checklist como um piloto trata o pre-flight check: todo item, toda vez, sem excecao.

Pre-Deploy Checklist Completo

Environment Variables

  • Todas as env vars de producao configuradas no provider (Vercel, Railway, etc.)
  • Nenhuma env var apontando para servicos de teste/staging
  • API keys do Stripe em modo LIVE (nao test)
  • DATABASE_URL apontando para o banco de producao
  • JWT_SECRET e unico e forte (32+ caracteres aleatorios)
  • NEXTAUTH_URL / APP_URL configurado com dominio de producao

Database

  • Migracoes aplicadas no banco de producao
  • Seed data necessario inserido (planos, roles, configs)
  • Backup do banco antes do deploy (se ja tem dados)
  • Indexes criados para queries frequentes
  • Connection pooling configurado (PgBouncer, Prisma connection pool)

Build & Dependencies

  • npm run build passa sem erros localmente
  • npm audit sem vulnerabilidades criticas
  • Lock file (package-lock.json) commitado
  • Node.js version especificada no package.json (engines field)
  • Nenhum console.log de debug no codigo de producao

Security

  • .env e .env.local no .gitignore
  • Nenhum secret hardcoded no codigo
  • CORS configurado com whitelist restrita
  • Security headers ativos (helmet ou equivalente)
  • Rate limiting configurado em endpoints sensiveis

Causas Mais Comuns de Deploy Falho

42%

env vars incorretas ou faltando (PlanetScale State of Deploy 2025)

23%

migracoes de banco nao aplicadas ou conflitantes

18%

dependencias com breaking changes nao detectadas

11%

build passa local mas falha no CI (versao de Node, OS differences)

Dica Pratica: Automatize o Checklist

Nao confie na memoria humana para checklists. Automatize o maximo possivel: scripts de pre-deploy que verificam env vars, CI pipelines que rodam build + testes + audit antes de permitir o deploy, e health checks que validam que a aplicacao esta respondendo apos o deploy.

Crie um script scripts/pre-deploy.sh que executa: npm run build && npm run test && npm audit --production. Rode esse script antes de cada deploy. Se qualquer etapa falhar, o deploy nao acontece. Simples e eficaz.

Fazer

  • Usar checklist escrito em CADA deploy, sem excecao
  • Automatizar verificacoes com scripts e CI
  • Fazer backup do banco antes de deploys com migracoes
  • Verificar build localmente antes de fazer push

Evitar

  • Deployar na sexta-feira a noite (nunca, jamais)
  • Confiar que "funciona no meu computador" = funciona em producao
  • Pular o checklist porque "e so uma mudanca pequena"
  • Deployar sem ter rollback plan (como reverter se der errado)
2

🔄 CI/CD Pipeline

CI/CD (Continuous Integration / Continuous Deployment) e o sistema que automatiza o processo de build, teste, e deploy do seu codigo. Toda vez que voce faz push para o repositorio, o pipeline roda automaticamente: instala dependencias, executa testes, faz build, e (se tudo passar) deploya para producao. Zero intervencao manual.

Sem CI/CD, cada deploy e um evento manual cheio de risco. Com CI/CD, deploy vira algo que voce faz 10 vezes por dia sem pensar. GitHub Actions e a ferramenta padrao porque ja esta integrada no GitHub, tem milhares de actions prontas na marketplace, e o free tier e generoso (2.000 minutos/mes para repos privados).

GitHub Actions: Pipeline Completo

Um pipeline tipico para SaaS Next.js/Node.js com deploy na Vercel:

# .github/workflows/deploy.yml

name: CI/CD Pipeline

on:

  push:

    branches: [main]

  pull_request:

    branches: [main]

jobs:

  test:

    runs-on: ubuntu-latest

    steps:

      - uses: actions/checkout@v4

      - uses: actions/setup-node@v4

        with:

          node-version: 20

          cache: 'npm'

      - run: npm ci

      - run: npm run lint

      - run: npm run test

      - run: npm run build

  # Vercel deploys automaticamente via git integration

  # PRs criam preview deploys, merge to main = production

Push to branch: Roda testes. Se passam, cria preview deploy (staging). O link de preview e postado automaticamente no PR.

Merge to main: Roda testes novamente. Se passam, deploy automatico para producao. Se falham, o deploy e bloqueado.

Rollback: Se algo da errado em producao, reverta o commit no GitHub. O pipeline re-deploya a versao anterior automaticamente.

Impacto de CI/CD na Produtividade

46x

mais frequencia de deploy em equipes com CI/CD vs sem (DORA Metrics 2025)

7x

menor tempo de recovery quando algo da errado em producao

5x

menor taxa de falha em deploys automatizados vs manuais

2K min

free tier do GitHub Actions para repositorios privados (suficiente para iniciar)

Dica Pratica: Comece Minimalista

Seu primeiro pipeline precisa de apenas 3 steps: install, test, build. Adicione lint, security audit, e E2E tests depois. Se voce usa Vercel ou Netlify, o deploy acontece automaticamente via git integration, entao voce nao precisa configurar o deploy step no GitHub Actions.

Peca para a IA gerar o workflow: "Crie um GitHub Actions workflow para um projeto Next.js que roda npm ci, npm run lint, npm run test, e npm run build em cada push e PR para a branch main. Node 20, cache de npm habilitado." Feito. 30 segundos.

Fazer

  • Configurar CI/CD antes do primeiro deploy para producao
  • Bloquear merge to main se testes falharem
  • Usar preview deploys para testar PRs antes de mergear
  • Configurar notificacoes de falha (Slack, email, Telegram)

Evitar

  • Deployar manualmente via SSH ou FTP (e 2026, use CI/CD)
  • Mergear PRs com testes falhando "porque e urgente"
  • Colocar secrets no arquivo de workflow (use GitHub Secrets)
  • Criar pipeline tao complexo que leva 30 minutos para rodar
3

🌐 Dominio e DNS

Um dominio proprio (seuapp.com em vez de seuapp.vercel.app) e fundamental para credibilidade. Nenhum usuario paga por um SaaS que roda em um subdominio generico de plataforma de deploy. Alem da credibilidade, um dominio proprio permite configurar email profissional (contato@seuapp.com), subdomains (api.seuapp.com, docs.seuapp.com), e SEO consistente.

A configuracao de dominio envolve 3 partes: comprar o dominio (registrar), apontar o DNS para seu servidor/plataforma, e configurar SSL (HTTPS). Em 2026, todas as plataformas modernas de deploy (Vercel, Railway, Fly.io, Cloudflare Pages) automatizam o SSL, entao voce so precisa configurar os DNS records corretamente.

Setup Completo: Dominio + DNS + SSL

1

Comprar o Dominio

Registradores recomendados: Cloudflare Registrar (mais barato, sem markup), Namecheap, Google Domains. Evite GoDaddy (overpriced, upsell agressivo). Preco tipico: $8-15/ano para .com. Escolha um nome curto, memoravel, e facil de soletrar. Verifique disponibilidade em whois antes.

2

Configurar DNS

Transfira o DNS para o Cloudflare (gratuito) para ter CDN, proteção DDoS, e gerenciamento facil. DNS records necessarios:

# Para Vercel:

A @ 76.76.21.21

CNAME www cname.vercel-dns.com

# Para Railway:

CNAME @ your-app.up.railway.app

# Para subdomains:

CNAME api api-server.railway.app

CNAME docs your-docs.vercel.app

3

SSL / HTTPS

Com Vercel/Railway/Cloudflare, o SSL e automatico. Basta adicionar o dominio no dashboard da plataforma e configurar os DNS records. O certificado Let's Encrypt e provisionado automaticamente em minutos. Verifique com https://www.ssllabs.com/ssltest/ apos configurar.

4

Cloudflare (Recomendado)

Cloudflare oferece gratuitamente: CDN global, protecao DDoS, Web Application Firewall (WAF), analytics, caching, e page rules. E a camada de protecao e performance entre o usuario e seu servidor. Setup: crie conta, adicione seu dominio, atualize os nameservers no registrador, configure DNS records.

Comparativo de Registradores

Registrador Preco .com/ano Pros
Cloudflare Registrar~$9.77At-cost pricing, DNS+CDN inclusos
Namecheap~$10.28Interface simples, WhoisGuard gratis
Porkbun~$9.73Mais barato, SSL gratis, interface moderna
Google Domains~$12.00Integracao Google, interface clean

Dica Pratica: DNS Propagation

Depois de mudar DNS records, pode levar ate 48 horas para propagar globalmente (embora geralmente leve 15-30 minutos). Use https://dnschecker.org para verificar a propagacao em tempo real. Se voce usa Cloudflare como DNS, a propagacao e quase instantanea porque o Cloudflare e o proprio DNS server.

Configure o dominio 24-48 horas ANTES do lancamento oficial para garantir que tudo esta propagado. Nada pior do que lancar seu SaaS e o dominio nao resolver para metade dos usuarios porque o DNS ainda nao propagou.

Fazer

  • Usar Cloudflare para DNS + CDN + protecao (gratis)
  • Configurar dominio dias antes do lancamento
  • Verificar SSL com SSLLabs apos configurar
  • Configurar redirect de www para root (ou vice-versa)

Evitar

  • Lancar com subdominio da plataforma (seuapp.vercel.app)
  • Comprar dominios premium caros antes de validar a ideia
  • Configurar DNS na hora do lancamento (propagacao demora)
  • Ignorar HTTPS (browsers modernos marcam HTTP como "Nao Seguro")
4

🔒 Seguranca em Producao

Seguranca em producao vai alem de security headers e autenticacao. E sobre criar camadas de defesa que protegem seu SaaS, seus dados, e seus usuarios contra ameacas reais. Em 2026, ataques automatizados sao constantes: bots escaneiam a internet 24/7 procurando vulnerabilidades em apps recem-deployados. Seu SaaS sera alvo no momento que ficar online.

A abordagem correta e "defense in depth": multiplas camadas de seguranca, cada uma independente das outras. Se uma falhar, as outras continuam protegendo. Nenhuma camada sozinha e suficiente. HTTPS protege o transito, security headers protegem o browser, WAF protege contra ataques de rede, e vulnerability scanning protege contra falhas no seu codigo.

Camadas de Seguranca para SaaS

HTTPS Everywhere

Todas as comunicacoes via HTTPS. Sem excecao. Configure HSTS com max-age de 1 ano e includeSubDomains. Redirecione HTTP para HTTPS automaticamente. Certifique-se que cookies tem os flags Secure e SameSite. Teste com SSLLabs para garantir nota A+.

WAF (Web Application Firewall)

WAF filtra requests maliciosos antes que cheguem ao seu servidor. Cloudflare WAF (gratis no plano Free para regras basicas) bloqueia SQL injection, XSS, e outros ataques OWASP Top 10. Configure regras customizadas para seu caso: rate limit em endpoints de auth, block por country se seu SaaS e regional, challenge bots suspeitos.

DDoS Protection

Cloudflare oferece protecao DDoS gratuita e ilimitada em todos os planos. Eles absorvem o trafego malicioso antes de chegar ao seu servidor. Sem isso, um ataque DDoS pode derrubar seu SaaS por horas ou dias. Nao tente resolver DDoS no nivel do servidor. Use uma CDN com protecao integrada.

Vulnerability Scanning

Rode npm audit regularmente para detectar vulnerabilidades em dependencias. Use GitHub Dependabot para receber PRs automaticos quando uma dependencia tem CVE. Faca security audit do seu codigo com ferramentas como Snyk ou SonarQube. No minimo, rode audit no CI pipeline a cada build.

Realidade de Ataques em SaaS

39 seg

intervalo medio entre tentativas de ataque a qualquer servidor exposto na internet

43%

dos ataques ciberneticos visam pequenos negocios e startups (Verizon DBIR 2025)

$4.5M

custo medio de um data breach para empresas (IBM Security 2025)

287 dias

tempo medio para identificar e conter um breach sem monitoramento

Dica Pratica: Security Checklist Minimo

Para um SaaS em estagio inicial, essas 5 acoes cobrem 80% dos riscos: 1) Cloudflare na frente (CDN + WAF + DDoS), 2) Helmet no Express (security headers), 3) Rate limiting em /auth/* endpoints, 4) npm audit no CI, 5) Dependabot habilitado no GitHub. Tudo gratuito, tudo leva menos de 1 hora para configurar.

Scan de seguranca mensal: rode npx is-website-vulnerable https://seuapp.com para detectar bibliotecas JavaScript com vulnerabilidades conhecidas carregadas no seu frontend. E um teste rapido que revela problemas que npm audit nao pega.

Fazer

  • Colocar Cloudflare na frente do app desde o dia 1
  • Habilitar Dependabot e npm audit no CI
  • Rate limit endpoints de autenticacao (5/min/IP)
  • Revisar logs de acesso semanalmente para atividade suspeita

Evitar

  • Achar que "meu SaaS e pequeno demais para ser alvo" (nao e)
  • Expor portas/servicos desnecessariamente (DB, admin panels)
  • Deixar APIs sem autenticacao "temporariamente"
  • Ignorar alertas de vulnerabilidade do Dependabot
5

📡 Monitoramento Pos-Deploy

Deploy sem monitoramento e como lancar um foguete sem telemetria. Voce nao sabe se esta funcionando ate alguem reclamar. Monitoramento e o que separa um SaaS profissional de um projeto de hobby: uptime monitoring garante que voce sabe antes do usuario quando o app cai, error tracking captura bugs em producao, e performance monitoring identifica lentidao.

A boa noticia e que todas as ferramentas essenciais de monitoramento tem tiers gratuitos suficientes para um SaaS em estagio inicial. Voce nao precisa gastar dinheiro para ter monitoramento profissional. Precisa investir 1-2 horas configurando.

Stack de Monitoramento

Uptime Monitoring

UptimeRobot / BetterStack

Pinga seu site a cada 5 minutos de multiplas locacoes globais. Se nao responder, voce recebe alerta imediato via email, Slack, SMS, ou webhook. UptimeRobot: gratuito para 50 monitors com check de 5 min. BetterStack (ex-Better Uptime): gratuito para 10 monitors com check de 3 min.

Meta: 99.9% uptime = maximo 8.7 horas de downtime por ano. Para SaaS B2B, 99.95%+ e esperado.

Error Tracking

Sentry

Sentry captura erros em tempo real no frontend e backend, com stack trace completo, breadcrumbs (o que o usuario fez antes do erro), e contexto (browser, OS, user info). O free tier permite 5K eventos/mes, suficiente para SaaS inicial.

// Setup Sentry (Next.js)

npm install @sentry/nextjs

npx @sentry/wizard@latest -i nextjs

// Automaticamente captura erros em client e server

Performance Monitoring

Vercel Analytics / Sentry Performance

Mede tempo de carregamento de paginas, latencia de APIs, e Web Vitals (LCP, FID, CLS). Vercel Analytics e gratuito no hobby plan e mostra metricas de performance reais dos seus usuarios. Sentry Performance (incluso no free tier) mostra traces de transacoes e identifica bottlenecks.

Log Management

Axiom / BetterStack Logs

Logs centralizados permitem investigar problemas apos o fato. Em vez de fazer SSH no servidor e rodar grep, voce pesquisa logs em um dashboard com filtros. Axiom: free tier com 500GB ingest/mes. BetterStack Logs: free tier com 1GB/mes. Ambos suportam Next.js, Vercel, e qualquer fonte de logs.

Alertas: O que Configurar

Alertas sao uteis quando bem calibrados. Alertas demais = alert fatigue (voce ignora todos). Alertas de menos = voce descobre problemas pelo Twitter. Configure estes alertas essenciais:

CRITICO: Site fora do ar (uptime check falhou 2x seguidas) - alerta via SMS + email imediato

ALTO: Spike de erros (10x mais erros que o normal em 5 min) - alerta via Slack/Telegram

MEDIO: Performance degradada (P95 latency > 2s por 10 min) - alerta via email

BAIXO: SSL expirando em 14 dias, dependency vulnerability nova - alerta via email digest

Dica Pratica: Setup em 1 Hora

Siga esta ordem: 1) UptimeRobot: crie conta, adicione monitor HTTP para seuapp.com, configure alerta por email (5 min). 2) Sentry: instale o SDK, configure com DSN, faca um throw new Error de teste (15 min). 3) Vercel Analytics: ative no dashboard do projeto, zero config (2 min). 4) Configure um status page gratuito no UptimeRobot ou BetterStack para comunicar com usuarios (10 min).

Status page e subestimado mas crucial. Quando seu app fica fora do ar, usuarios precisam de um lugar para verificar se "sou so eu ou o servico esta fora?". Um status page (ex: status.seuapp.com) responde essa pergunta e reduz tickets de suporte durante incidentes.

Fazer

  • Configurar uptime + error tracking ANTES de lancar
  • Criar status page publico para transparencia com usuarios
  • Calibrar alertas: poucos e significativos, nao muitos e ignorados
  • Revisar Sentry semanalmente para corrigir erros recorrentes

Evitar

  • Descobrir que o app esta fora do ar pelo usuario reclamando
  • Configurar 50 alertas e ignorar todos (alert fatigue)
  • Usar console.log como unico metodo de debugging em producao
  • Negligenciar monitoramento "porque o Vercel cuida de tudo"
6

🛠️ Exercicio Final: App Publicada

Este e o exercicio final da Imersao Vibe Coding. Voce vai pegar tudo o que construiu ao longo das 6 trilhas e colocar no ar como um SaaS funcional e completo. Landing page, autenticacao, funcionalidade principal, billing com Stripe, monitoramento, e dominio proprio. Um produto real, acessivel por qualquer pessoa com a URL.

Esse nao e um exercicio academico. E o lancamento real do seu produto. Mesmo que seja um MVP, mesmo que nao esteja perfeito, o objetivo e terminar o curso com algo publicado, funcional, e pronto para receber os primeiros usuarios. Isso e Vibe Shipping na sua forma mais pura.

Passo a Passo do Deploy Final

1

Landing Page

Se voce nao tem uma landing page do Modulo 1.2, crie agora. Requisitos minimos:

  • Hero: titulo, subtitulo, CTA claro ("Comece Gratis")
  • Features: 3-4 beneficios com icones
  • Pricing: 3 tiers com CTA em cada um
  • Social proof: mesmo que seja "Construido com Vibe Coding"
  • Footer: links, legal, contato
2

Auth + Core Functionality

Integre auth (Clerk, Auth.js, ou o sistema que voce construiu no Modulo 6.3) com sua funcionalidade principal. O usuario deve conseguir: signup > login > usar a feature principal > logout. Se sua feature usa IA, implemente o sistema de creditos do Modulo 6.5.

3

Billing com Stripe

Ative o Stripe em modo LIVE (nao test). Crie os Products e Prices reais. Configure os webhooks para o endpoint de producao. Teste o fluxo completo com uma compra real (voce pode reembolsar depois). Integre o Customer Portal para gestao de subscription.

4

Deploy + Dominio

Deploy na Vercel (ou plataforma de sua escolha). Configure dominio proprio com Cloudflare DNS. Verifique SSL. Configure redirects (www > root, HTTP > HTTPS). Teste todas as paginas no dominio final.

5

Monitoramento

Configure: UptimeRobot (uptime), Sentry (errors), Vercel Analytics (performance). Crie status page. Teste cada alerta: force um downtime de teste, force um erro, verifique que os alertas chegam.

6

Launch Checklist Final

Rode o pre-deploy checklist do Topico 1. Faca uma passada completa no app como usuario: signup > explore > upgrade > use > downgrade > logout. Peca para uma pessoa testar (amigo, familiar, colega). Corrija qualquer problema critico encontrado. Quando tudo passar: publique a URL.

Checklist de Entregaveis Finais

Dica Pratica: Ship It

Nao espere estar perfeito. Nao espere ter todas as features. Nao espere resolver aquele bug visual que so aparece no Safari em mobile. Ship. Agora. A diferenca entre quem completa um curso e quem realmente lanca algo e exatamente esta: a disposicao de publicar algo imperfeito.

Voce tem 100% das habilidades necessarias. Ao longo de 6 trilhas voce aprendeu: mentalidade de Vibe Coding, arquitetura de SaaS, construcao com IA, agentes autonomos, multi-agent systems, e agora operacao e deploy. O unico passo que falta e apertar o botao. Faca isso agora.

Fazer

  • Deployar HOJE, mesmo que nao esteja perfeito
  • Pedir para alguem testar antes de anunciar publicamente
  • Compartilhar a URL e coletar feedback real
  • Celebrar: voce construiu e lancou um SaaS completo

Evitar

  • Esperar "ficar pronto" (nunca vai ficar, e esse e o ponto)
  • Adicionar "so mais uma feature" antes de lancar
  • Comparar seu MVP com SaaS que tem anos de mercado
  • Desistir nesta etapa final (voce esta a um deploy de distancia)
🎉

Parabens! Voce Completou a Imersao Vibe Coding!

De Mentalidade a Operacao. De zero a SaaS publicado. Voce percorreu 6 trilhas, dezenas de modulos, e agora tem um produto real no ar. Isso nao e o fim. E o comeco.

O que Voce Conquistou

T1 Mentalidade: Dominou o paradigma Vibe Coding e Agentic Engineering
T2 Arquitetura: Projetou stack, banco de dados, APIs, e infraestrutura
T3 Construcao: Construiu frontend, backend, e integracao com IA
T4 Agentes: Implementou agentes autonomos com tools e memoria
T5 Multibots: Orquestrou multi-agent systems com routing inteligente
T6 Operacao: Publicou com auth, billing, monitoring, e dominio proprio

Voce agora faz parte de uma nova geracao de builders que constroi software 10x mais rapido usando IA como ferramenta fundamental. O que voce faz com essa habilidade e com voce. Mas o mais importante: voce ja nao e alguem que "quer aprender". Voce e alguem que construiu e lancou. Isso muda tudo.

Continue construindo. Continue lancando. O mundo precisa do que voce vai criar.

Resumo do Modulo 6.7

Checklist de deploy: env vars, database, build, security verificados
CI/CD com GitHub Actions: push > test > build > deploy automatico
Dominio proprio com Cloudflare DNS, SSL automatico, CDN global
Seguranca: HTTPS, WAF, DDoS protection, vulnerability scanning
Monitoramento: uptime, error tracking, performance, status page
SaaS completo publicado: landing + auth + billing + monitoring + dominio