O App do Codecon é um monorepo baseado em next-forge que serve como espinha dorsal para a Codecon. Ela centraliza o gerenciamento de usuários, autenticação, recursos de gamificação e integrações com sistemas externos.
- Autenticação e registro de usuários
- Gerenciamento de perfil de usuário
- Sistema de emblemas e gamificação
- Integração com plataformas de venda de ingressos
- Desafios e quebra-cabeças para participantes
- Integrações com sistemas externos via APIs e webhooks
- Instale o pnpm
- Instale o Node.js (versão especificada no
package.json
) - Instale o Mintlifly CLI
pnpm add -g @mintlify/cli
pnpm migrate
: Para configurar o banco de dadospnpm dev
: Iniciar a aplicação
Certifique-se de configurar as seguintes variáveis de ambiente no seu arquivo .env.local
nas pastas /apps/app
e /apps/api
:
CLERK_SECRET_KEY
: Chave de API da ClerkCLERK_WEBHOOK_SECRET
: Secret do Webhook da Clerk recebido pela nossa aplicaçãoEVEN3_WEBHOOK_SECRET
: Secret do Webhook da Even3 recebido pela nossa aplicaçãoRESEND_AUDIENCE_ID
: ID da audiência no ResendRESEND_FROM
: E-mail que será o remetente dos e-mails transacionaisDATABASE_URL
: String de conexão com o PostgreSQLRESEND_TOKEN
: Chave de API do ResendBETTERSTACK_API_KEY
: Chave de API do BetterStackBETTERSTACK_URL
: URL da status page do BetterStackFLAGS_SECRET
: Secret para uso de features flagsARCJET_KEY
: Chave de API da ArcJetNEXT_PUBLIC_CLERK_PUBLISHABLE_KEY
: Chave publicável do ClerkNEXT_PUBLIC_GA_MEASUREMENT_ID
: Código do Google AnalyticsNEXT_PUBLIC_POSTHOG_KEY
: Código do PostHogNEXT_PUBLIC_POSTHOG_HOST
: URL de Host do PostHog
Também configure a variável de ambiente do banco de dados no arquivo .env
dentro da pasta /packages/database
DATABASE_URL
: String de conexão com o PostgreSQLDIRECT_URL
: String de conexão direta, para usar nas migrations
- http://localhost:3000/ — A aplicação principal
- http://localhost:3002/ — A API
- http://localhost:3003/ — Preview de e-mails
- http://localhost:3004/ — Documentação da API
Acesse a documentação do next-forge para mais detalhes.
Por favor, leia nosso Guia de Contribuição antes de enviar um Pull Request para o projeto.
Este projeto está licenciado sob a Mozilla Public License 2.0 (MPL-2.0).