Skip to content

williamkoller/go-short

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔗 URL Shortener em Go

Um encurtador de URLs simples, rápido e extensível, desenvolvido com Golang, Gin e armazenamento em memória.

Ideal para aprender boas práticas com o framework Gin, organizar um projeto real de backend.


🚀 Funcionalidades

  • Encurtar URLs com uma API RESTful
  • Redirecionar URLs encurtadas
  • Armazenamento em memória (rápido, ideal para testes locais)
  • Estrutura modular e profissional

🛠 Tecnologias


📂 Estrutura do Projeto

url-shortener/
├── cmd/main.go          # Inicialização do servidor
├── internal/
│   ├── handler/                # Rotas e controladores HTTP
│   ├── service/                # Lógica de negócio (encurtamento)
│   └── store/                  # Armazenamento em memória

🧪 Como Rodar Localmente

1. Clone o repositório

git clone https://github.com/williamkoller/go-short.git
cd go-short

2. Instale as dependências

go mod tidy

3. Inicie a aplicação

go run cmd/main.go

🔗 Endpoints da API

POST /shorten

Encurta uma URL.

Exemplo:

curl -X POST http://localhost:8080/shorten \
  -H "Content-Type: application/json" \
  -d '{"url":"https://golang.org/doc/effective_go"}'

Resposta:

{
  "short_url": "http://localhost:8080/abc123"
}

GET /:short

Redireciona para a URL original.

curl -i http://localhost:8080/abc123

Feito com ❤️ em Go — sinta-se livre para contribuir, sugerir melhorias ou abrir issues!

About

Go Short Url

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages