Este é o backend de uma aplicação de rede social, desenvolvido com foco em performance, escalabilidade e boas práticas. A API REST permite gerenciamento de usuários, posts, comentários e likes, sendo ideal para aplicações sociais modernas.
- Node.js + TypeScript
- Fastify (servidor web rápido e leve)
- Prisma ORM (acesso e manipulação de dados)
- Docker (containerização e ambiente isolado)
- Swagger (documentação automática da API)
- 🔐 Cadastro e autenticação de usuários
- 📝 Criação, listagem, edição e exclusão de posts
- 💬 Comentários em posts
- ❤️ Sistema de likes (curtidas)
- 🧾 Documentação completa com Swagger
- 📦 Estrutura modular com
usecases,controllers,services
git clone https://github.com/anderson3001/API-REST.git
cd API-RESTCrie um arquivo .env na raiz do projeto com as seguintes variáveis:
# .env.example
# URL de conexão com o banco de dados PostgreSQL
DATABASE_URL="postgresql://USER:PASSWORD@localhost:5432/DATABASE?schema=public"
# Porta em que o servidor irá rodar
PORT=3000
# Ambiente de execução da aplicação (dev, production, etc.)
NODE_ENV=dev
# Credenciais para envio de email (Nodemailer)
EMAIL_USER=your-email@example.com
EMAIL_PASS=your-email-password
# Chave secreta para assinatura dos tokens JWT
JWT_SECRET=your-jwt-secretCertifique-se de que o Docker e o Docker Compose estão instalados em sua máquina. Se ainda não tiver o Docker, você pode baixá-lo aqui. Com o Docker instalado, execute os seguintes passos para subir a aplicação com Docker:
-
Faça uma cópia do arquivo .env.example e renomeie para .env.
-
Substitua os valores de configuração pelo seu banco de dados e outras credenciais.
- No diretório raiz do projeto, execute o comando:
docker-compose up -d
Após a execução bem-sucedida do Docker, o servidor estará rodando em:
http://localhost:3000
Acessar a documentação Swagger:
Você pode acessar a documentação interativa da API no seguinte endereço:
http://localhost:3000/api-docs