Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/usrjosephc/api-viagens

API de Viagens usando GoLang
https://github.com/usrjosephc/api-viagens

docker docker-compose gin git go gorm postman sqlite

Last synced: 23 days ago
JSON representation

API de Viagens usando GoLang

Awesome Lists containing this project

README

        

# 🌍 API de Sistema Web de Viagens

Esta é uma API RESTful desenvolvida em **Go** para um sistema de viagens. A API gerencia **destinos turísticos** e **depoimentos de clientes**, com suporte a operações CRUD completas e endpoints otimizados. O projeto foi configurado para rodar em ambiente **Docker** e utiliza **Gin** e **Gorm** para gerenciamento de rotas e banco de dados.

---


Tecnologias Utilizadas   |   
Como Configurar e Executar o Projeto   |   
Estrutura do Projeto   |   
Melhorias Futuras   |   
Licença


License

## 🛠️ **Tecnologias Utilizadas**

- **Golang (Go)**: Linguagem principal do projeto.
- **Gin**: Framework para criação de APIs rápidas e eficientes.
- **Gorm**: ORM para manipulação do banco de dados.
- **SQLite**: Banco de dados local para armazenar informações.
- **Docker**: Containerização do ambiente.
- **Postman**: Testes de endpoints e validação da API.

---

## 🚀 **Como Configurar e Executar o Projeto**

### Pré-requisitos

Certifique-se de ter os seguintes itens instalados no seu sistema:

- **Docker** e **Docker Compose**
- **Git**
- **Postman** (opcional, mas recomendado para testar a API)

### Clonar o RepositĂłrio

```bash
git clone https://github.com/usrJosephC/api-viagens.git
cd api-viagens
```

## 🗂️ Estrutura do Projeto

```bash
├── controllers # Lógica dos endpoints
│ ├── destination_controller.go
│ ├── testimony_controller.go
├── models # Modelos para o banco de dados
│ ├── destination.go
│ ├── testimony.go
├── routes # Configuração das rotas
│ ├── router.go
├── main.go # Entrada principal da aplicação
├── Dockerfile # Configuração do container
├── docker-compose.yml # Orquestração dos containers
└── README.md # Documentação do projeto
```
## đź“Ś Melhorias Futuras
1. Adicionar autenticação (ex.: JWT) para proteger endpoints.
2. Configurar suporte a bancos de dados externos (ex.: PostgreSQL, MySQL).
3. Implementar paginação para os endpoints GET.
4. Adicionar suporte a upload de imagens reais nos depoimentos e destinos.

### 🤝 Contribuição
Sinta-se Ă  vontade para abrir issues ou enviar pull requests para melhorar o projeto. Feedbacks sĂŁo bem-vindos!

## :memo: Licença

Esse projeto está sob a licença MIT.