Um espaço para codificadores
Codú é a comunidade final de desenvolvedores da Web para aprender, compartilhar e obter suporte para seus projetos, grande ou pequena. É o lugar perfeito para aprimorar suas habilidades e construir seu portfólio. Em Codú, estamos todos aqui para nos ajudar a crescer como desenvolvedores da Web. Além disso, Codú facilita encontrar colaboradores para o seu próximo grande projeto.
Temos uma comunidade fantástica crescendo na discórdia. Clique aqui para participar!
git clone https://github.com/YOUR_USERNAME/codu.git .cd codu do diretório do projeto.npm install.nvmrc . Se você estiver usando nvm , poderá executar nvm use antes de instalar dependências..env e adicione as seguintes variáveis. Você pode copiar o conteúdo de sample.env com cat sample.env > .env . # This default value is if you run our local docker-compose.yml file to create the database.
DATABASE_URL=postgresql://postgres:[email protected]:5432/postgres
# Setup your GitHub ID & Secret on GitHub: https://developer.github.com/apps/building-oauth-apps/authorizing-oauth-apps
# For development, make sure you set up this with a Homepage URL of http://localhost:3000/ and an Authorization callback URL of http://localhost:3000/api/auth
GITHUB_ID=YOUR_GITHUB_APP_ID
GITHUB_SECRET=YOUR_GITHUB_APP_SECRET
NEXTAUTH_URL=http://localhost:3000/api/auth
Para um guia mais detalhado para configurá -los, acesse a seção Variáveis de ambiente.
Nota: Antes de prosseguir, verifique se o seu banco de dados está em execução.
npm run db:migrateO comando completo pode ser visto em nosso arquivo package.json.
npm run db:seedO comando completo pode ser visto em nosso arquivo package.json.
npm run devApós a conclusão dos comandos acima, navegue para http: // localhost: 3000 no seu navegador para ver o resultado.
Você pode iniciar sua jornada modificando pages/index.tsx . Com o recurso de atualização automática, as páginas atualizam enquanto você edita o arquivo.
O diretório pages/api é mapeado para /api/* . Os arquivos neste diretório são tratados como rotas de API em vez de páginas de reação.
Saiba mais sobre as rotas de API aqui.
O DATABASE_URL é uma string de conexão com um banco de dados PostGresql (versão 15.0).
Por padrão, apontamos para um banco de dados executando localmente com o Docker do nosso arquivo docker-compose.yml .
Para executar esse arquivo, verifique se você está instalado no Docker e o Docker está em execução.
Execute o docker compose up .
Como alternativa, se você tiver o PostgreSQL em execução localmente, poderá usar sua string de conexão local ou pegar uma de um serviço gratuito como Supabase.
Atualmente, permitimos apenas autenticação via Github. Para ativar isso, você precisa ter um valor GITHUB_ID e GITHUB_SECRET .
Configure seu ID e segredo do GitHub no Github:
Para o desenvolvimento, certifique -se de configurar isso com um URL da página inicial de
http://localhost:3000/
e um URL de retorno de chamada de autorização de
http://localhost:3000/api/auth
Depois de clicar no botão "Registrar aplicativo", você deve ver o GITHUB_ID e poder gerar um novo segredo do cliente. Depois de gerar o segredo, copie esse valor para o seu arquivo .env , pois esse valor não pode ser visto novamente depois de atualizar a página.
Mais informações sobre como autorizar o OAuth na documentação do GitHub aqui.
Para usar o login sem senha localmente, você precisa ter um valor de ACCESS_KEY e SECRET_KEY .
Confira o arquivo .env do exemplo aqui para ver como preencher esses valores.
NOTA: Atualmente, a região da AWS do serviço SNS é codificada para "Eu-West-1"; Pode ser necessário alterar isso se o seu serviço SNS estiver em uma região diferente.
Você não precisa alterar o valor padrão aqui. Esta é uma variável usada pela próxima autenticação como URL de autenticação para o seu site.
NEXTAUTH_URL=http://localhost:3000/api/auth
Exemplo de arquivo .env pode ser encontrado aqui. Você pode renomear isso para .env para começar.
Para saber mais sobre o Next.js, dê uma olhada nos seguintes recursos:
Para aprender sobre os atalhos e teclas de hot editor, você pode conferir este documento:
Para obter informações sobre o teste E2E, consulte nossa documentação dedicada aqui.
Você pode abrir questões para discutir idéias sobre a melhoria do Codú. Os aprimoramentos são incentivados e apreciados.