Skip to content

Latest commit

 

History

History
90 lines (63 loc) · 4.13 KB

File metadata and controls

90 lines (63 loc) · 4.13 KB

🚀 Gerenciador de Tarefas PRO (Task Manager)

Python FastAPI Docker Google Cloud

Uma aplicação web fullstack com backend robusto desenvolvido em Python FastAPI, banco de dados SQLite e conteinerização via Docker, culminando em um deploy serverless no Google Cloud Run.


👨‍💻 Sobre o Autor e o Projeto

Olá! Sou Daniel Rodrigues, estudante do ensino superior em Desenvolvimento de Software na FATEC Itaquera e desenvolvedor de software buscando uma nova oportunidade profissional.

Desenvolvi este projeto com o principal objetivo de demonstrar minhas habilidades arquiteturais e práticas no Desenvolvimento Backend. Ele prova o entendimento de ponta a ponta na criação de APIs RESTful, modelagem de banco de dados, conteinerização de aplicações e implantação CI/CD na nuvem via GitHub para o Cloud Run.

🔗 Veja o projeto rodando na nuvem aqui 🔗 Meu LinkedIn


🛠️ Tecnologias Utilizadas

Este projeto foi desenhado utilizando práticas modernas de engenharia de software:

  • Backend: Python, FastAPI, SQLAlchemy (ORM), Pydantic (Validação e Serialização de Dados).
  • Banco de Dados: SQLite (Auto-gerado durante a inicialização para facilitar desenvolvimento local).
  • Frontend Vanilla: HTML5, CSS3 Customizado (Dark Mode com UX Premium) e JavaScript Puro sem frameworks.
  • DevOps & Nuvem: Docker, deploy serverless gerenciado no Google Cloud Run.

✨ Destaques de Engenharia

  • Arquitetura Limpa: Separação clara de escopo metodológico entre os endpoints de API de backend e o consumo de DOM no frontend.
  • API Documentada: Serviços de CRUD padronizados acompanhado de automação e documentação interativa com Swagger UI.
  • Containerização Eficiente: Dockerfile planejado do zero para ambientes Serverless, extraindo a porta nativa do contêiner.
  • Single-Origin Serving: O servidor construído em FastAPI foi moldado para lidar ativamente com as requisições API e lidar passivamente com o fornecimento das páginas web estáticas do frontend usando em um host único.

⚙️ Como Executar Localmente

Siga o passo a passo abaixo para testar todo o fluxo da aplicação diretamente na sua máquina:

  1. Clone este repositório e acesse sua raiz:

    git clone https://github.com/danielvor/task-manager-python.git
    cd app_python
  2. Crie e ative um ambiente de desenvolvimento limpo:

    python -m venv venv
    
    # Windows
    venv\Scripts\activate
    # Linux/Mac
    source venv/bin/activate
  3. Agrupe as dependências do projeto:

    pip install -r requirements.txt
  4. Inicie o servidor de alto desempenho:

    uvicorn backend.main:app --reload
  5. Navegue pela aplicação no browser:

    • 🖥️ Interface visual Web: http://localhost:8000
    • 📘 Painel Interativo da API (Swagger): http://localhost:8000/docs

☁️ Deploy no Google Cloud Run

Este projeto está pronto e customizado para ser injetado em provedores Cloud Run. A configuração containerizada repassa ativamente a variável global de PORT exigida pelos ecossistemas de contêineres e PaaS do Google.

O fluxo de publicação na CLI oficial simplifica-se com:

gcloud run deploy app-python-backend \
  --source . \
  --allow-unauthenticated \
  --region us-central1

Gostou da solução técnica apresentada? Estou à disposição para tomar um café virtual e conversarmos de que forma irei agregar valor imediato na sua equipe de engenharia!