Alternativa open-source e leve ao Trello, projetada para makers e indie hackers.
Foco em simplicidade, velocidade e escalabilidade. Construído com stack moderna: Tailwind CSS, shadcn/ui, Supabase, integração com Stripe. Suporta projetos ilimitados, colaboração em equipe, modo escuro/claro e experiência de usuário fluida. Perfeito para desenvolvedores solo e pequenas equipes que querem controle total sem complexidade desnecessária.
🌟 Se você acha este projeto útil, considere dar uma estrela! Isso ajuda outros a descobri-lo também.
Guia de Deploy
Visão Geral
Esta aplicação agora utiliza rotas locais da API Next.js em vez de Supabase Edge Functions para integração com Stripe. Isso torna a implantação mais simples e permite usar arquivos .env padrão para configuração.Configuração das Variáveis de Ambiente
1. Crie o arquivo .env.local
Copie.env.example para .env.local e preencha com seus valores reais:cp .env.example .env.local
2. Variáveis de Ambiente Necessárias
#### Configuração do Supabase
NEXT_PUBLIC_SUPABASE_URL- URL do seu projeto SupabaseNEXT_PUBLIC_SUPABASE_ANON_KEY- Sua chave anônima do SupabaseSUPABASE_SERVICE_ROLE_KEY- Sua chave de função de serviço do Supabase (apenas no lado do servidor)
STRIPE_SECRET_KEY- Sua chave secreta do Stripe (apenas no lado do servidor)NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY- Sua chave publicável do StripeSTRIPE_WEBHOOK_SECRET- Seu segredo de webhook do Stripe
NEXT_PUBLIC_SITE_URL- URL do seu site (para produção)NEXTAUTH_URL- URL do seu site (igual ao acima)NEXTAUTH_SECRET- Um segredo aleatório para o NextAuth
Desenvolvimento Local
- Instale as dependências:
npm install
- Configure suas variáveis de ambiente em
.env.local - Execute o servidor de desenvolvimento:
npm run dev
- Teste os webhooks do Stripe localmente usando o Stripe CLI:
stripe listen --forward-to localhost:3000/api/stripe/webhook
Implantação em Produção
Implantação no Vercel
- Implantar no Vercel:
npx vercel
- Variáveis de Ambiente:
- Configuração do Webhook Stripe:
- Aponte o webhook para:
https://your-domain.vercel.app/api/stripe/webhook
Endpoints da API
O aplicativo agora utiliza estas rotas locais de API:
POST /api/stripe/checkout- Cria sessões de checkout do StripePOST /api/stripe/webhook- Lida com eventos de webhook do Stripe
Benefícios das Rotas Locais de API
- Implantação Mais Simples - Não é necessário implantar funções edge separadas
- Variáveis de Ambiente - Suporte padrão para arquivos .env
- Melhor Depuração - Mais fácil de depurar localmente
- Integração com Framework - Melhor integração com Next.js
- Sem Dependência de Fornecedor - Pode implantar em qualquer plataforma que suporte Next.js
Solução de Problemas
- Problemas com Webhook:
- Certifique-se de que
STRIPE_WEBHOOK_SECRETcorresponde ao endpoint de webhook do Stripe - Verifique os logs do webhook no painel do Stripe
- Confirme se a URL do webhook está correta
- Variáveis de Ambiente:
- Certifique-se de que todas as variáveis necessárias estão definidas
- Verifique se há erros de digitação nos nomes das variáveis
- Confirme se a chave de role do serviço Supabase tem permissões adequadas
- Problemas de CORS:
- As rotas da API incluem os cabeçalhos CORS apropriados
- Certifique-se de que seu domínio está na lista permitida, se necessário
Notas de Segurança
- Nunca exponha
STRIPE_SECRET_KEYouSUPABASE_SERVICE_ROLE_KEYpara o cliente - Use o prefixo
NEXT_PUBLIC_apenas para variáveis do lado do cliente - Gire seus segredos de webhook regularmente
- Monitore a entrega de webhooks no painel do Stripe