Skip to content

Repository files navigation

CRUD com Node.js, Fastify e PostgreSQL

Este projeto consiste em um CRUD (Create, Read, Update, Delete) desenvolvido com Node.js e Fastify, utilizando PostgreSQL como banco de dados, hospedado no Neon Console, e deploy realizado no Render.

🚀 Tecnologias Utilizadas

  • Node.js
  • Fastify
  • PostgreSQL (Neon Console)
  • Render (Deploy)
  • dotenv (Gerenciamento de variáveis de ambiente)
  • pg (Cliente PostgreSQL para Node.js)

📌 Funcionalidades

  • Criar um novo registro (Create)
  • Listar registros existentes (Read)
  • Atualizar um registro (Update)
  • Remover um registro (Delete)

🔧 Como Executar o Projeto

1. Clone o repositório

git clone https://github.com/seu-usuario/nome-do-repo.git
cd nome-do-repo

2. Instale as dependências

npm install

3. Configure as variáveis de ambiente

Crie um arquivo .env na raiz do projeto e adicione as credenciais do banco de dados:

PGHOST='seu-host-no-neon'
PGDATABASE='seu-banco'
PGUSER='seu-usuario'
PGPASSWORD='sua-senha'

4. Execute as migrações (caso tenha scripts para criar tabelas)

npm run migrate

5. Inicie o servidor

npm run dev

O servidor será iniciado em http://localhost:3000

🌍 Deploy no Render

Este projeto está hospedado no Render. Para acessar a aplicação, utilize o link: 🔗 Seu-Link-No-Render

📜 Rotas da API

Criar um vídeo

POST /videos

Body:

{
  "title": "Nome do vídeo",
  "description": "Descrição do vídeo",
  "duration": 120
}

Listar vídeos

GET /videos

Atualizar um vídeo

PUT /videos/:id

Body:

{
  "title": "Novo Nome",
  "description": "Nova Descrição",
  "duration": 150
}

Deletar um vídeo

DELETE /videos/:id

🛠 Possíveis Melhorias

  • Adicionar autenticação com JWT
  • Implementar testes automatizados
  • Criar uma interface frontend para consumir a API

📝 Licença

Este projeto está sob a licença MIT. Sinta-se à vontade para utilizá-lo e melhorá-lo!


Feito com 💙 por Igor Campos

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages