https://github.com/thifacco/url-shortener
🔗 Encurtador de links desenvolvido com NestJS, Docker e MongoDB
https://github.com/thifacco/url-shortener
docker docker-compose mongodb nestjs shortener url
Last synced: 2 months ago
JSON representation
🔗 Encurtador de links desenvolvido com NestJS, Docker e MongoDB
- Host: GitHub
- URL: https://github.com/thifacco/url-shortener
- Owner: thifacco
- Created: 2022-09-15T13:47:01.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2025-04-09T12:37:22.000Z (about 1 year ago)
- Last Synced: 2025-09-13T11:19:21.824Z (10 months ago)
- Topics: docker, docker-compose, mongodb, nestjs, shortener, url
- Language: TypeScript
- Homepage:
- Size: 2.08 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

## URL Shortner API
Essa aplicação é uma API Rest desenvolvida com Node.js / NestJS para encurtar links de maneira rápida e simples.
## Tecnologias
Essas foram as tecnologias usadas nesse projeto:
* Node.js versão 16.0.0
* NestJS versão 9.0.0
* MongoDB versão 6.0
* Docker versão 2
## Serviços
* Node.js
* Docker
## NPM packages
* Moment
* Mongoose
* Nanoid
* RxJS
* Valid URL
## Getting started
* Dependências
- Node.js
- Docker daemon
* Para instalar as dependências do projeto:
```bash
npm install
```
* Para iniciar a aplicação:
```bash
npm run start:dev
```
Esse comando irá iniciar o Docker e criar a imagem do banco de dados MongoBD automaticamente.
* Para visualizar a aplicação no navegador: `npm home` ou [http://localhost:3000/api](http://localhost:3000/api)
## Como usar a aplicaçao
### 1 - Quando você acessar a url do projeto, verá a interface do SwaggerUI.

### 2 - Você pode navegar pela assinatura do endpoint POST /url e depois clicar no botão "Try it out" para testar a criação de um encurtamento de link.
- Adicione o link que pretende encurtar no campo "originalUrl" do request body
- Clique no botão "Execute"

### 3 - Navegue pelo endpoint GET /urls para visualizar a lista de urls encurtadas.
- Clique no botão "Try it out" e depois em "Execute"

- Aparecerá a lista de todas urls encurtadas criadas anteriormente.

### 4 - Navegue pelo endpoint GET /urls/{hashCode} e busque pelo código hash da url encurtada.
- Clique no botão "Try it out", informe o código no campo "hashCode" e clique no botão "Execute"

- Você verá o registro da url encurtada:

### 5 - Navegue pelo endpoint PATCH /urls/disable para desabilitar a url encurtada pelo código.
- Clique no botão "Try it out", informe o código no campo "hashCode" e clique no botão "Execute"

- Se o código informado estiver correto, o response irá retornar a mensagem `{ "success": true }`.

## Features
As principais funcionalidades dessa aplicação são:
- Encurtar um link
- Salvar o link encurtado
- Redirecionar o link curto para o link original
- Contagem de cliques do link curto
- Expiração do link curto por data
## Links
- Repositório: [https://github.com/thifacco/url-shortener](https://github.com/thifacco/url-shortener)
- Docker daemon [https://docs.docker.com/get-docker/](https://docs.docker.com/get-docker/)
## Versioning
1.0.0.0
## Autor
* **Tiago Luis Facco**
Siga-me no github e vamos juntos!
Obrigado pela visita e bons códigos!