VIBE IN PUBLIC_

Supabase Edge Functions no vibe coding: API fora do Next para o mobile

Se a API mora no Next.js, o app mobile de amanhã não alcança. Na live do bookm, o recorte foi Supabase Edge Functions como endpoint HTTP independente.

Se você quer um app mobile amanhã, não coloque a API dentro do Next.js. Use endpoints HTTP independentes. Na live de 99 min, gbrl808 nomeou o acoplamento: se os endpoints moram no Next, o mobile não os alcança. A saída que ele leu nas IAs foi o runtime de função do Supabase, as Supabase Edge Functions.

No dia anterior ele escolheu React pelo reuso com o mobile, no post de React Native vs Flutter. A extensão e o site compartilham código React. Se a API mora no Next, o mobile de amanhã não alcança esses endpoints.

O acoplamento que trava o mobile

A conversa é desenho de onde a API mora. Ele constrói o bookm, gestor de favoritos com extensão e web, e quer a central fora do browser. O mobile já estava no desenho. O backend desta live também é a cena em que ele recusou o user do Auth como modelo. Aqui o assunto é o endereço da API.

O aclamento real é esse. Amanhã você quiser uma app mobile, os APIs não são acessíveis.

A transcrição gravou "aclamento". Fora das aspas, o nome é acoplamento. Se o agente gravar as rotas no Next.js, o site de hoje responde e o app de amanhã fica de fora. A extensão e o site falam com o Next. Um cliente nativo não entra nessa rota.

É o que eu estou a dizer.

O produto pede, nas palavras da live, "uma central de favoritos na web nesta pegada desacop. desacoplada do browser no canal." Se a API ficar no Next, a central fica no Next. O favorito salvo na extensão chega ao site. O favorito lido no celular precisa de um endpoint que o celular consiga chamar. Vale ver como isso terminou em vibe coding para extensao chrome capturar titulo de pagina spa.

Supabase Edge Functions no vibe coding: o Next só chama

No vibe coding, o agente oferece primeiro a rota de API no repo do Next. O frontend do site chama essa rota. Um app mobile não tem esse caminho. Ele estava discutindo o backend com as IAs (Perplexity e Antigravity):

discutindo aqui com as IAS como organizar esse backend aí.

A resposta que ele leu e repetiu, com a legenda esburacada, aponta o runtime de função dentro da base:

Super base tem um run time de função sever denominado head points. Ponto http independentes que vivem dentro da sua base lá.

Fora das aspas, isso é Supabase Edge Functions: endpoints HTTP independentes que vivem na base. O dado e o contrato HTTP ficam juntos no Supabase. Next apenas chama. Qualquer cliente consome. A transcrição corta em "qualquer cliente cons", e ele acrescenta:

Next apenas chama de cloud.

O Next e a extensão chamam o mesmo endpoint. O mobile de amanhã usa essa URL. A stack React do dia anterior só carrega o reuso até o celular se o contrato HTTP não estiver preso ao servidor do site. Isso aparece também em vibe coding para nao deixar agente mudar migracao no redesign.

ONDE A API MORA

API no Next

O site de hoje responde. O app de amanhã fica de fora

Supabase Edge Functions

Next apenas chama. Qualquer cliente consome

A cena termina em conversa. A função e o deploy ficam para outra sessão. O que fica gravado é o endereço: a API sai do Next e mora no runtime da base. Vale ver como isso terminou em vibe coding para landing page do app na play store.

O que o próximo prompt precisa carregar

Amanhã, antes de aceitar a rota de API que o agente oferecer no Next, escreva o que ele falou. O mobile é cliente futuro. A API precisa ser HTTP independente. O Next só chama. Se o agente devolver a regra do favorito numa pasta de rotas do Next, recuse e peça de novo: a regra mora numa Supabase Edge Function, e o Next consome o mesmo endpoint que a extensão e o app vão consumir. Isso aparece também em recut.

Pergunte qual URL o app mobile chama. Se a resposta for uma rota do Next do site, o acoplamento que ele nomeou já está no código. Vale ver como isso terminou em vibe coding para nao trocar supabase por postgres na vps.

No ritmo do vibe coding, o agente grava a rota no Next se o prompt não travar o endereço. O gesto de cruzar IAs que ele já usou para juntar product.md e implementation plan no Antigravity volta no backend. Ele pergunta a mais de 1 modelo como organizar, e o endereço da API entra na conversa. O que precisa entrar no plano hoje é onde o endpoint mora.

A live de 99 min registra a conversa. Dá para assistir à live no trecho em que ele discute o backend e nomeia o acoplamento.