As imagens são para inspiração. Elas mostram um exemplo de layout para o encurtador de URLs que vocês irão desenvolver. O visual final do seu projeto deve ser funcional e intuitivo, mas não precisa ser idêntico às imagens de referência.

image.png

image.png

Objetivo

O objetivo deste trabalho é desenvolver uma aplicação web completa de um "Encurtador de Links". O foco principal será no desenvolvimento de uma API RESTful utilizando Node.js com o framework Fastify e um banco de dados PostgreSQL. Vocês também criarão um front-end em React JS ou Next.js para interagir com a API, permitindo cadastrar, editar e apagar os links encurtados. O projeto visa avaliar as habilidades na criação de APIs, modelagem de dados, integração entre front-end e back-end e boas práticas de desenvolvimento.

Descrição

O "Encurtador de Links" é uma ferramenta que transforma URLs longas em links curtos e fáceis de compartilhar. A aplicação web será dividida em duas partes principais:

  1. API Back-end: O serviço responsável por receber uma URL longa, gerar um código único, salvar a associação no banco de dados e redirecionar os usuários do link curto para a URL original.
  2. Painel de Gerenciamento (Front-end): Uma interface simples onde o usuário pode criar novos links curtos, visualizar todos os links já criados, editar o destino de um link existente e removê-los.

A aplicação não exigirá autenticação de usuário.

Tecnologias

Requisitos Funcionais

A aplicação é dividida em Front-end (Painel) e Back-end (API).

API Back-end (Node.js + Fastify)