Skip to content

About

Aplicação Web inspirada no TabNews, feita com React. Ele consome a API do mini-tabnews-api para exibir, criar e interagir com posts e comentários, oferecendo uma interface web simples e funcional para navegação e uso da plataforma.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

Mini TabNews API

Uma API REST inspirada no TabNews, desenvolvida com foco educacional e uso em conjunto com a aplicação front-end Mini TabNews SPA. Permite criar, listar, atualizar e excluir conteúdos como posts e comentários.

🛠 Tecnologias Utilizadas

🚀 Funcionalidades

  • Criar conteúdos
  • Listar todos os conteúdos
  • Listar um conteúdo por ID
  • Listar comentários de um conteúdo
  • Atualizar um conteúdo
  • Deletar um conteúdo

📦 Instalação

  1. Clone o repositório:
git clone https://github.com/thecaKo/mini-tabnews-api.git
cd mini-tabnews-api
  1. Instale as dependências:
npm install
  1. Configure o banco de dados:
npx prisma migrate dev
  1. Inicie o servidor:
npm run dev

Servidor disponível em http://localhost:3333.


📄 Endpoints da API

📚 Conteúdos (Posts e Comentários)

Método Rota Descrição
GET /contents Lista todos os conteúdos
GET /contents/:id Retorna um conteúdo por ID
GET /contents/:id/comments Lista os comentários de um conteúdo
POST /contents Cria um novo conteúdo
PUT /contents/:id Atualiza um conteúdo existente
DELETE /contents/:id Deleta um conteúdo pelo ID

📝 Exemplo de Body (POST/PUT)

{
  "title": "Título do conteúdo",
  "content": "Texto do conteúdo",
  "parentId": null
}

parentId: Use null para posts ou forneça um id de conteúdo para adicionar como comentário.


🧪 Exemplo de Requisição com cURL

curl -X POST http://localhost:3333/contents \
-H "Content-Type: application/json" \
-d '{
  "title": "Exemplo de post",
  "content": "Conteúdo do post aqui.",
  "parentId": null
}'

📁 Estrutura de Pastas

mini-tabnews-api/
├── prisma/              # Schema e migrations do banco de dados
├── src/
│   ├── routes/          # Rotas da aplicação
│   ├── controllers/     # Lógica dos endpoints
│   └── server.ts        # Arquivo principal do servidor
├── .env                 # Variáveis de ambiente
├── package.json
└── README.md

👨‍💻 Autor

Desenvolvido por @thecaKo

About

Aplicação Web inspirada no TabNews, feita com React. Ele consome a API do mini-tabnews-api para exibir, criar e interagir com posts e comentários, oferecendo uma interface web simples e funcional para navegação e uso da plataforma.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages