https://github.com/loanmatteusz/challenge-snet
Desafio para a vaga Desenvolvedor Junior na SNet
https://github.com/loanmatteusz/challenge-snet
challenge docker docker-compose golang nuxt
Last synced: 12 months ago
JSON representation
Desafio para a vaga Desenvolvedor Junior na SNet
- Host: GitHub
- URL: https://github.com/loanmatteusz/challenge-snet
- Owner: loanmatteusz
- Created: 2025-06-20T03:54:11.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-07-17T20:18:13.000Z (12 months ago)
- Last Synced: 2025-07-17T20:24:12.464Z (12 months ago)
- Topics: challenge, docker, docker-compose, golang, nuxt
- Language: Vue
- Homepage: https://challenge-snet.vercel.app/
- Size: 486 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Desafio Fullstack SNet: Backend Go + Frontend Nuxt
Aplicação fullstack com backend desenvolvido em Go (Echo framework) e frontend em Nuxt 3 (Vue 3). O backend expõe uma API REST para gerenciar usuários, estabelecimentos e lojas, e o frontend consome essa API para apresentar a interface ao usuário.
---
## Tecnologias utilizadas
- Backend:
- Go 1.24+
- Echo framework
- PostgreSQL
- Frontend:
- Nuxt 3
- Vue 3
- TailwindCSS
- Zod para validação
- Docker e Docker Compose para containerização e orquestração
---
## Configuração local
### Pré-requisitos
- Docker e Docker Compose instalados
- (Opcional) Go instalado para rodar backend localmente
- (Opcional) Node.js e npm/yarn para rodar frontend localmente
---
### Variáveis de ambiente
O backend e o frontend usam variáveis de ambiente para configuração, principalmente:
- **Backend:**
```env
DATABASE_URL=postgres://user:password@host:port/dbname
PORT=3333
```
- **Frontend:**
```env
API_URL=http://localhost:3333
```
---
## Rodando a aplicação com Docker Compose
Na raiz do projeto, execute:
```bash
docker-compose up --build
```
Isso vai:
- Construir e subir o container do backend na porta `3333`
- Construir e subir o container do frontend na porta `3000`
Acesse a aplicação no navegador via:
```
http://localhost:3000
```
---
## Rodando localmente sem Docker
### Backend
No diretório `backend/`:
```bash
go run ./cmd/api
```
Certifique-se de que o banco de dados está configurado e rodando.
### Frontend
No diretório `frontend/`:
```bash
npm install
npm run dev
```
---