Bem-vindo ao Chat App! Este aplicativo oferece uma plataforma intuitiva e sem complicações para conectar e se comunicar com amigos e colegas.
O Chat App permite que você se comunique sem esforço, compartilhando ideias e construindo conexões mais fortes. O aplicativo é criado com ❤️, combinando uma interface amigável com a potência das últimas tecnologias.
- Comunicação Sem Esforço: Conecte-se com outros e comunique-se de maneira fluida.
- Interface Intuitiva: Design amigável para uma experiência de chat suave.
- Compartilhamento de Ideias: Compartilhe e discuta ideias com facilidade.
- Tecnologias Modernas: Construído com as últimas tecnologias para desempenho otimizado.
Aqui estão algumas das principais dependências usadas neste projeto:
- next: Framework React para construir aplicações web.
- typescript: Superset tipado do JavaScript.
- @upstash-redis: Ferramenta de controle de banco de dados.
- @tailwindcss: Estilização de CSS.
- axios: Cliente HTTP para fazer requisições.
- react: Biblioteca JavaScript para construir interfaces de usuário.
- zod: Declaração e validação de esquemas com foco em TypeScript.
- @headlessui/react: Componentes de interface para React sem estilos.
Certifique-se de verificar o arquivo package.json
para obter a lista completa de dependências e suas versão.
Para começar com o Chat App, siga estas etapas:
Certifique-se de que você tem uma conta no Upstash e crie um banco de dados Redis. Preencha as variáveis no arquivo .env:
UPSTASH_REDIS_REST_URL=sua_url
UPSTASH_REDIS_REST_TOKEN=seu_token
Crie um projeto no Google Developers Console, ative a API do Google+ e obtenha suas credenciais. Preencha as variáveis no arquivo .env:
GOOGLE_CLIENT_ID=seu_id
GOOGLE_CLIENT_SECRET=seu_secret
Preencha a variável no arquivo .env com uma string secreta para assinar os tokens JWT:
JWT_SECRET=secret
Preencha as variáveis no arquivo .env com a URL do seu aplicativo e uma string secreta para NextAuth:
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=secret
Crie uma conta no Pusher e obtenha as credenciais. Preencha as variáveis no arquivo .env:
PUSHER_APP_ID=seu_pusher_id
NEXT_PUBLIC_PUSHER_APP_KEY=sua_chave_pusher
PUSHER_APP_SECRET=seu_pusher_secret
Sinta-se à vontade para explorar e personalizar o aplicativo de acordo com suas necessidades!
Utilizei o Upstash para armazenamento em cache e dados em tempo real. Sua facilidade de uso e integração eficiente tornam-no uma escolha ideal.
NextAuth oferece uma solução simples e segura para autenticação social, enquanto a integração com o Google proporciona familiaridade aos usuários.
Next.js, uma estrutura React, oferece SSR e pré-renderização estática para melhor desempenho e experiência do usuário.
Tailwind CSS simplifica a estilização com sua abordagem "utility-first", proporcionando flexibilidade e eficiência.
React Hook Form simplifica a gestão de formulários em React, tornando a validação e manipulação de dados mais eficientes.
Axios para requisições HTTP
Zod, uma biblioteca de validação TypeScript, aprimora a integridade e confiabilidade dos dados.
Vercel fornece uma plataforma eficiente e escalável para hospedagem, com integração contínua e deploy automatizado.
Contribuições são bem-vindas! Se encontrar problemas ou tiver sugestões de melhorias, abra uma issue ou crie uma pull request.
Bons bate-papos! 🚀