Sbily

Um projeto Django para um encurtador de links.

Licença MIT Estilo de código: Ruff

Um projeto Django para um encurtador de links.

Tecnologias Utilizadas

Como Executar o Projeto

Para executar o projeto, você precisa ter o Python e o Node (para executar o Rspack) instalados em sua máquina, ou você pode usar o Docker.

Sem Docker

Uma vez que o repositório é clonado e as dependências globais são instaladas, você pode instalar as dependências locais do projeto.

1. Instale as Dependências Locais

Dependências do Python:

uv sync

Dependências do Node:

pnpm install

2. Configure as variáveis de ambiente

Copie o diretório .envs.example para o diretório .envs (que será ignorado pelo Git):

cp -r .envs.example .envs

3. Faça as migrações

uv run manage.py migrate

4. Crie um superusuário

uv run manage.py createsuperuser

5. Executando o aplicativo em modo de desenvolvimento

Aplicação Django:

uv run manage.py runserver

Rspack:

pnpm dev

O comando Python iniciará o aplicativo Django em http://localhost:8000 e o Node iniciará o Rspack e um servidor proxy para recarregamento automático em http://localhost:3000.

Com Docker

Uma vez que o repositório é clonado, as dependências globais são instaladas e as variáveis definidas, vamos iniciar o contêiner:

docker compose -f docker-compose.local.yml up

Quando iniciado, o contêiner inicia o aplicativo Django!

Os passos abaixo só serão necessários se você ainda não tiver realizado as migrações e criado um superusuário! Se você já fez isso, o aplicativo pode ser acessado em: http://localhost:3000

Você precisará entrar no contêiner via CLI:

docker compose -f docker-compose.local.yml up exec django zsh

Agora você está dentro do contêiner!

Você precisará fazer as migrações:

uv run manage.py migrate

Criando um superusuário:

uv run manage.py createsuperuser

O comando Python iniciará o aplicativo Django em http://localhost:8000 e o Node iniciará o Rspack e um servidor proxy para carregamento automático em http://localhost:3000.

Licença

Este projeto está sob a licença MIT.