Skip to content

Robotz213/EncurtadoPy

Repository files navigation

EncurtaPy

Breve Descrição

EncurtaPy é um encurtador de URL desenvolvido utilizando Python, Flask e MySQL no backend para cadastro e registro de URLs encurtadas. A interface web foi construída com Bootstrap, e a autenticação é gerenciada via JWT, permitindo que você crie seu próprio front-end.

Como Configurar?

Instalação do Ambiente Virtual (venv)

Para criar um ambiente virtual, utilize o comando abaixo. Se optar por um nome personalizado, adicione-o ao .gitignore para evitar que a pasta seja enviada ao repositório. O "xy" representa a versão do seu Python 3 (exemplo: python3.10/3.11/3.12).

  • python3.xy -m venv .venv ou
  • python3.xy -m venv .{nomepersonalizado}

Instalação das Dependências

As dependências do projeto estão listadas no arquivo requirements.txt.

No Windows:

Para habilitar a execução de scripts, siga as instruções da documentação da Microsoft.

  • Ative o ambiente virtual: .venv/Scripts/activate
  • Instale as dependências: python -m pip install -r requirements.txt

No Linux:

  • Ative o ambiente virtual: source .venv/bin/activate
  • Instale as dependências: python -m pip install -r requirements.txt

Criação do Arquivo .env

Crie um arquivo .env na raiz do projeto com as seguintes configurações:

## Environment

DEBUG = False

>> Totalmente Opcional. Caso não tenha, ele usará o Sqlite
Database = ""
DBLogin = ""
DBPassword = ""
DBHost = ""

Estrutura do Projeto

  • APP: Diretório principal contendo rotas, formulários e models do Flask.

Estrutura Interna do Diretório /app:

  • Routes: Arquivo contendo as rotas do projeto, organizadas por funções.
  • Models: Diretório onde estão os models e binds do SQL.
  • Forms: Diretório contendo os formulários do projeto, organizados por funções.

Tecnologias Utilizadas


BOOTSTRAP PYTHON FLASK MYSQL LINUX

Alternativas e Desafios

Para explorar alternativas e desafios relacionados ao backend, visite o repositório Desafio-BackEnd.

URL para Visualização

Acesse o encurtador de URLs em Encurtador.