Ignite Call, uma aplicação que permite os usuários compartilharem suas agendas, conectadas diretamente com o Google Agenda, permitindo terceiros, a agendarem compromissos em suas horários disponível previamente escolhidos pelo usuário.
- Cadastro de usuário: Primeiro você cadastra o usuário, para em seguido conectar a sua Agenda Google.
- Selecionar disponibilidade: Seleciona os dias da semana que estará disponível, junto ao horário de cada dia disponível.
- Agendar compromisso: Ao escolher o horário disponível, pode agendar um Google Meet.
Antes de começar, certifique-se de ter o Node.js instalado em seu sistema junto ao Docker.
-
Clone este repositório:
git clone https://github.com/rcnald/ignite-call.git # ou gh repo clone rcnald/ignite-call
-
Entre no diretório do projeto:
cd ignite-call
-
Instale as dependências do projeto:
npm install
-
Execute o banco de dados:
- Execute o PostgreSQL via Docker:
docker run --name postgres -e POSTGRES_PASSWORD=docker -p 5432:5432 -d postgres
- Rode as migrações do Prisma:
npx prisma migrate dev
- Execute o PostgreSQL via Docker:
-
Crie um projeto na Google Cloud:
- Acesse: Google Cloud Console.
- Crie um novo projeto e selecione-o.
- No dashboard, vá em 'API & Serviços' > 'Credenciais'.
- Crie uma nova credencial do tipo 'ID do cliente OAuth 2.0'.
- Preencha as informações obrigatórias e adicione o domínio
http://localhost:3000
no campo de 'Domínios Autorizados'. - Publique o aplicativo.
- Volte em 'Criar Credencial' e selecione 'Aplicativo Web' como tipo de aplicação.
- Adicione as URLs abaixo para
- as origens autorizadas de JavaScript:
http://localhost:3000
- as URL autorizadas de redirecionamento:
http://localhost:3000/api/auth/callback/google
- Após isso, você terá acesso ao Client ID e Client Secret.
-
Gere o secret OAuth:
npx auth secret
-
Crie e configure o arquivo
.env
:- Crie um arquivo
.env
na raiz do projeto baseado no.env.example
. - Adicione as seguintes variáveis de ambiente:
GOOGLE_CLIENT_ID=<seu_client_id> GOOGLE_CLIENT_SECRET=<seu_client_secret>
- Adicione as URLs para conectar com o banco de dados:
DATABASE_URL="postgresql://postgres:docker@localhost:5432/ignitecall" DATABASE_DIRECT_URL="postgresql://postgres:docker@localhost:5432/ignitecall"
- Crie um arquivo
-
Inicie o projeto:
npm run dev
- O projeto será iniciado na porta http://localhost:3000 (se disponível).
Tecnologias e bibliotecas utilizadas para a construção do projeto.