← O caminho IaGenify

Produção

04 · 4–6 semanas

Trabalhe em experiências prontas para produção com integrações de negócios reais.

Candidatar-se↗
Google AnalyticsStripeDockerCloudflareVercel

Produção, aplicado em trabalho real.

Trabalhe em experiências prontas para produção com integrações de negócios reais.

Una decisões de produto, integrações e operação numa entrega.

A etapa Produção explora os desafios de uma aplicação real: analytics, APIs de IA, Stripe e os conceitos de VPS por trás de um serviço ativo.

Começar pelas pessoas e pelo sinal do produto

Uma funcionalidade de produção tem uma razão para existir e uma maneira de entender se é útil. Analytics introduz essa camada de medição: identificar atividades relevantes e usá-las para orientar decisões de produto, em vez de tratar números coletados como um objetivo por si só.

Integrar serviços numa experiência coerente

APIs de IA e Stripe oferecem capacidades externas diferentes: uma pode trazer comportamento baseado em modelos, enquanto a outra participa de fluxos de pagamento. Em ambos os casos, a integração precisa de um lugar claro no produto, comportamento previsível e configuração tratada com cuidado.

Entender o que mantém a aplicação no ar

Uma funcionalidade não termina quando funciona no computador de quem a desenvolve. Os conceitos de VPS apresentam o ambiente de servidor que pode hospedar uma aplicação ativa e o contexto operacional ao redor dela. A etapa conecta intenção de produto, serviços externos e pensamento de publicação.

Do conceito ao código funcional

Estes trechos mostram como os conceitos de cada nível aparecem em projetos reais. São pontos de partida para ler, questionar, adaptar e testar — não código para copiar sem entender.

Manter credenciais do serviço no servidor

A rota valida a solicitação antes de chamar o serviço de IA. A chave vem de uma variável de ambiente do servidor e erros externos viram respostas controladas; o segredo nunca é enviado ao navegador.

export async function POST(request) {
  const { prompt } = await request.json();
  if (typeof prompt !== "string" || !prompt.trim()) {
    return Response.json({ error: "Prompt is required." }, { status: 400 });
  }

  const upstream = await fetch(process.env.AI_API_URL, {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.AI_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ prompt: prompt.trim() }),
  });

  if (!upstream.ok) {
    return Response.json({ error: "The service is unavailable." }, { status: 502 });
  }

  return Response.json(await upstream.json());
}

Tornar a execução reproduzível

O Dockerfile instala dependências bloqueadas, compila em uma etapa separada e executa em produção com usuário sem privilégios. Para publicar, adicione verificação de saúde, fixe a imagem base e injete segredos pela configuração de deploy.

FROM node:22-alpine AS build
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM node:22-alpine AS runtime
ENV NODE_ENV=production
WORKDIR /app
COPY --from=build /app .
EXPOSE 3000
USER node
CMD ["npm", "start"]
Leia e depois adapte

Altere um requisito, preveja o resultado e execute o código para conferir. Na revisão, explique a escolha feita e uma melhoria que faria a seguir.

TECNOLOGIAS PRINCIPAIS
  • Analytics
  • APIs de IA
  • Stripe
  • Conceitos de VPS