Encurtador de URLs simples e eficaz que permite transformar links longos em versões curtas e fáceis de compartilhar. Ideal para redes sociais, mensagens de texto, e qualquer lugar onde o espaço é limitado.
- Encurtamento de Links: Converta URLs longas em links curtos e gerenciáveis.
- Acesso Rápido: Links curtos que redirecionam rapidamente para a URL original.
- Registro de URLs: Armazena URLs originais e seus links encurtados para fácil recuperação.
- Interface Simples: Fácil de usar, tanto em aplicativos da web quanto em dispositivos móveis.
- Node.js: Ambiente de execução para JavaScript no lado do servidor.
- TypeScript: Linguagem de programação que traz tipagem estática ao JavaScript.
- Express: Framework para construir APIs em Node.js.
- Prisma: ORM (Object-Relational Mapping) para interagir com o banco de dados.
- UUID: Biblioteca para gerar identificadores únicos para links.
- Node.js instalado na sua máquina.
- Um banco de dados (MySQL ou outro de sua escolha) configurado.
-
Clone o repositório:
git clone https://github.com/pivattogui/url-short.git cd url-short
-
Instale as dependências:
npm install
-
Configure seu banco de dados:
-
Crie um arquivo .env na raiz do projeto e adicione a URL do banco de dados:
DATABASE_URL="mysql://user:password@localhost:3306/url-short"
-
Execute as migrações do Prisma:
npx prisma migrate dev
-
Gere o cliente Prisma:
npx prisma generate
Para iniciar o servidor, use:
npm run dev
O servidor estará rodando em http://localhost:3000
.
-
POST /shorten: Encurta uma URL. Exemplo de requisição:
{ "url": "https://www.google.com" }
Exemplo de resposta:
{ "originalUrl": "https://www.google.com", "shortUrl": "http://localhost:3000/abc123" }
-
GET /:shortUrl: Redireciona para a URL original.