Base premium em Next.js 16 para uma alternativa elegante ao Linktree, com landing page de alto impacto, páginas públicas de perfil e dashboard pronto para evolução com Supabase e Cloudinary.
- Next.js 16 + App Router
- TypeScript
- Tailwind CSS 4
lucide-reactpara íconeszodpara schemas- Helpers preparados para
@supabase/ssr,@supabase/supabase-jsecloudinary
- Instale as dependências:
npm install- Copie o arquivo de ambiente:
# Windows PowerShell
Copy-Item .env.example .env.local
# macOS / Linux
cp .env.example .env.local- Inicie o ambiente de desenvolvimento:
npm run dev- Acesse:
http://localhost:3000/— landing premium do MyBio/login— login/register— cadastro/forgot-password— recuperação de senha/dashboard— visão geral do painel/dashboard/profile— perfil/dashboard/links— links/dashboard/socials— redes sociais/dashboard/themes— temas/dashboard/analytics— analytics/dashboard/settings— configurações/:username— página pública conectada ao Supabase
- Preencha as variáveis do Supabase e Cloudinary em
.env.local - Os dados atuais estão centralizados em
src/lib/mock-data.ts - Os schemas principais ficam em
src/validators - O proxy de proteção do dashboard está em
src/proxy.ts
O projeto suporta e-mail/senha e OAuth com Google ou GitHub. Para o ambiente de produção:
- Execute
supabase/mybio_schema.sqlno SQL Editor do projeto. - Em Authentication > URL Configuration, configure:
- Site URL:
https://mybio.ecomnix.com.br - Redirect URL:
https://mybio.ecomnix.com.br/auth/callback
- Site URL:
- Em Authentication > Providers, habilite Google e/ou GitHub com credenciais OAuth próprias.
- No provedor social, use como callback a URL exibida pelo Supabase, no formato:
https://<project-ref>.supabase.co/auth/v1/callback. - Mantenha a confirmação de e-mail habilitada. O link usa a
Site URLe a lista de redirects do Supabase; SMTP próprio é opcional e não deve ser usado como requisito para desabilitar a confirmação.
Nunca armazene Client Secrets, service role keys ou senhas no repositório. As chaves públicas do Supabase podem ficar no ConfigMap; segredos administrativos devem ficar no Secret do cluster.
Para operação didática e reproduzível do ambiente K3s/Oracle Free Tier, use o runbook:
- [docs/k3s-free-tier-runbook-2026-07-02.md](C:\Users\oneci\AppData\Roaming\TRAE SOLO\ModularData\ai-agent\work-mode-projects\6a42db49feaa591488c86942\mybio-premium\docs\k3s-free-tier-runbook-2026-07-02.md)
Resumo do padrão atual:
- o GitHub Actions gera a imagem de produção;
- a tag de produção deve ser
sha-<12>e nãolatest; - o cluster deve usar
imagePullPolicy: IfNotPresent; - o rollout do MyBio em Free Tier prioriza economia de memória.
npm run dev
npm test
npm run lint
npm run typecheck
npm run build