chore: remove generated artifacts from repository
Some checks failed
Validate, publish and deploy / validate (push) Successful in 7s
Validate, publish and deploy / publish-and-deploy (push) Failing after 6s

This commit is contained in:
Cauê Faleiros
2026-09-15 16:58:26 -03:00
parent 98c951d374
commit 26f7d2eb04
77 changed files with 32 additions and 83056 deletions

32
.gitignore vendored
View File

@@ -1,10 +1,42 @@
.env
.env.*
!.env.example
!.env.exemplo
*.env
.venv/
__pycache__/
*.pyc
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/
coverage/
dist/
build/
*.egg-info/
node_modules/
test-results/
playwright-report/
backups/
staging/staging.env
deploy/portainer.env
.agents/
.codex/
.idea/
.vscode/
.DS_Store
*.log
*.pem
*.key
*.p12
# Generated regression and point-in-time security evidence.
output/local/
output/security/
# Keep the roadmap generator, not its extracted text or render-review scratch.
tmp/*
!tmp/pdfs/
tmp/pdfs/*
!tmp/pdfs/generate_dtf_report.py

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 176 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
{"dependencies": [{"name": "annotated-doc", "version": "0.0.5", "vulns": []}, {"name": "annotated-types", "version": "0.8.0", "vulns": []}, {"name": "anyio", "version": "4.15.1", "vulns": []}, {"name": "boto3", "version": "1.38.23", "vulns": []}, {"name": "botocore", "version": "1.38.46", "vulns": []}, {"name": "certifi", "version": "2026.7.22", "vulns": []}, {"name": "click", "version": "8.5.0", "vulns": []}, {"name": "fastapi", "version": "0.141.1", "vulns": []}, {"name": "h11", "version": "0.16.0", "vulns": []}, {"name": "httpcore", "version": "1.0.9", "vulns": []}, {"name": "httpx", "version": "0.28.1", "vulns": []}, {"name": "idna", "version": "3.19", "vulns": []}, {"name": "jmespath", "version": "1.1.0", "vulns": []}, {"name": "pip", "version": "26.2.1", "vulns": []}, {"name": "psycopg", "version": "3.2.9", "vulns": []}, {"name": "psycopg-binary", "version": "3.2.9", "vulns": []}, {"name": "pydantic", "version": "2.13.5", "vulns": []}, {"name": "pydantic-core", "version": "2.46.5", "vulns": []}, {"name": "python-dateutil", "version": "2.9.0.post0", "vulns": []}, {"name": "s3transfer", "version": "0.13.1", "vulns": []}, {"name": "six", "version": "1.17.0", "vulns": []}, {"name": "starlette", "version": "1.6.0", "vulns": []}, {"name": "typing-extensions", "version": "4.16.0", "vulns": []}, {"name": "typing-inspection", "version": "0.4.4", "vulns": []}, {"name": "urllib3", "version": "2.7.0", "vulns": []}, {"name": "uvicorn", "version": "0.34.2", "vulns": []}], "fixes": []}

View File

@@ -1,26 +0,0 @@
annotated-doc==0.0.5
annotated-types==0.8.0
anyio==4.15.1
boto3==1.38.23
botocore==1.38.46
certifi==2026.7.22
click==8.5.0
fastapi==0.141.1
h11==0.16.0
httpcore==1.0.9
httpx==0.28.1
idna==3.19
jmespath==1.1.0
pip==26.2.1
psycopg==3.2.9
psycopg-binary==3.2.9
pydantic==2.13.5
pydantic_core==2.46.5
python-dateutil==2.9.0.post0
s3transfer==0.13.1
six==1.17.0
starlette==1.6.0
typing_extensions==4.16.0
typing-inspection==0.4.4
urllib3==2.7.0
uvicorn==0.34.2

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,329 +0,0 @@
PLANO DE ENTREGA
Sistema DTF
Plano de entrega
Uma operação em que o cliente envia a arte, recebe análise, paga e
acompanha a produção sem depender de WhatsApp, pastas ou repasse
manual.
OBJETIVO DECISÃO DE ARQUITETURA
Portal e Kanban online +
Transformar capacidade ociosa Cloudflare R2 + VPS existente. A
em atendimento e produção 24 impressão continua manual na
horas. fábrica.
Consolidação das discussões técnicas e comerciais - setembro de 2026
DTF Dropstar - plano de entrega
CONTEXTO
O problema que vamos resolver
A sala de DTF tem capacidade instalada muito maior que a produção atual. O gargalo não é a máquina:
é o fluxo entre o pedido, a arte, o designer e a sala. Hoje o cliente envia arquivo no WhatsApp, o
atendimento repassa, o designer descobre problemas tarde e o status fica escondido em pastas de rede.
O projeto resolve quatro falhas do processo:
• Recebimento limitado pelo horário: um cliente que chega no fim do dia espera até o turno seguinte.
• Arquivo sem rastreabilidade: WhatsApp e nomes digitados manualmente facilitam perda e erro.
• Arquivo ruim chega tarde ao designer: qualidade, dimensão e transparência são verificadas depois de
consumir tempo humano.
• Produção sem números: não há registro confiável de espera, velocidade real, fila ou retrabalho.
ANTES DEPOIS
Pedido e arte circulam por WhatsApp e pastas. Site DTF recebe a arte, analisa, precifica e registra o
fluxo.
Designer corrige indiscriminadamente. Arte pronta segue rápido; exceções vão para atendimento
humano.
Sala não enxerga fila real nem tempos. Kanban online organiza a fila e registra cada movimento
manualmente.
Página 2
DTF Dropstar - plano de entrega
MODELO OPERACIONAL
Como será a jornada do pedido
Escolhe o produto, envia a arte e vê o valor conforme as regras comerciais
Cliente entra no site DTF
1 já configuradas.
Calcula a metragem e prepara o pedido. O pré-flight automático será
Sistema registra a arte
2 validado depois da entrega, com arquivos reais.
O checkout é do Mercado Pago; os dados do cartão não passam pelo nosso
Cliente paga
3 servidor.
Depois da confirmação do pagamento, o pedido é criado no Tiny e aparece
Pedido entra no sistema
4 no Kanban.
O operador baixa o arquivo final no Kanban, importa no FlexiPRINT e
Equipe baixa e imprime
5 atualiza o card.
Onde o WhatsApp entra
O WhatsApp deixa de ser o lugar onde a arte é enviada. Ele serve para avisar o cliente: pagamento
aprovado, pedido em produção, pedido pronto ou necessidade de correção. Quando houver problema, a
mensagem leva o cliente de volta para o site.
Cuidados na automação: se Mercado Pago, Tiny ou WhatsApp reenviar um aviso por falha, o sistema confere antes de
agir. Assim, não cria dois pedidos nem manda a mesma mensagem duas vezes.
Página 3
DTF Dropstar - plano de entrega
PRODUÇÃO
Arquitetura de software e infraestrutura
Todo o sistema roda na nuvem: recebe, processa, integra e disponibiliza o arquivo final. A fábrica acessa
o Kanban pelo navegador e baixa o arquivo quando for produzir; não há componente instalado na rede
interna.
CLIENTE E INTEGRAÇÕES NUVEM / VPS EQUIPE DA FÁBRICA
Site DTF API FastAPI R2 Kanban online
arte, preço e checkout pedido, upload originais e fila, status e
acompanhamento do pedido e integrações arte final privada download seguro
Integrações externas Worker PostgreSQL Operador
Mercado Pago · Tiny/Olist antivírus e pedidos, jobs baixa e importa
WhatsApp Business pré-flight e histórico no FlexiPRINT
NUVEM Site DTF, Kanban online, API FastAPI, worker, ClamAV, PostgreSQL e Cloudflare R2.
FÁBRICA Navegador, operador e FlexiPRINT atual. O arquivo é baixado e importado manualmente.
TERCEIROS Mercado Pago, Tiny/Olist e WhatsApp Business API.
• Upload grande: o navegador manda o arquivo direto para o R2, em partes. O VPS não precisa receber 5
GB de uma vez.
• Fila: o banco guarda o que precisa ser analisado, enviado ao Tiny, avisado no WhatsApp ou apagado no
prazo certo.
• Segurança: o arquivo entra em quarentena, passa pelo antivírus e só depois é analisado e liberado no
Kanban.
• Se a fábrica ficar sem internet: o site continua no ar. A equipe apenas não consegue baixar arquivo
novo ou atualizar o Kanban até a conexão voltar.
Página 4
DTF Dropstar - plano de entrega
CLOUDFLARE
R2: custos e retenção
O R2 é onde os arquivos ficam guardados. Ele é privado: o operador só baixa pelo Kanban, com link
temporário. O custo vem principalmente da média de GB guardados no mês; leitura e gravação
costumam pesar bem menos. O download não tem cobrança de saída de dados.
MÉDIA ARMAZENADA R2 / MÊS APROX. EM R$*
100 GB US$ 1,35 R$ 7
500 GB US$ 7,35 R$ 38
1 TB US$ 14,85 R$ 76
3 TB US$ 44,85 R$ 230
* Referência de US$ 1 = R$ 5,13; câmbio, impostos e tarifas do meio de pagamento podem variar.
ARTEFATO PRAZO REGRA
Upload multipart incompleto 1 dia Abortado automaticamente.
Recusado ou infectado 3 dias Suporte pode conferir; depois apaga.
Original do cliente até 7 dias Após aprovação, não fica guardado sem necessidade.
Arte pronta para impressão máx. 30 dias Prazo conta do primeiro upload; permite correção ou
reimpressão recente.
Histórico e métricas banco Sem manter a imagem.
Decisão: não haverá biblioteca infinita de artes. Após o prazo, o cliente reenvia o arquivo; o pedido e sua
rastreabilidade permanecem registrados.
Página 5
DTF Dropstar - plano de entrega
OPERAÇÃO, PUBLICAÇÃO E CONTINUIDADE
Como fica em produção
A primeira entrega será operada como uma única aplicação na VPS. Portal, Kanban, processamento e
banco seguem o mesmo ciclo de publicação, com acesso da fábrica exclusivamente pelo navegador.
Isso reduz pontos de manutenção e mantém a operação independente da rede interna.
AMBIENTE COMPONENTES OPERAÇÃO
Sistema DTF site DTF, Kanban online, API, processamento, antivírus, banco VPS com armazenamento
de dados e cópia diária de segurança persistente; operação e
acompanhamento
centralizados
Publicação com controle
• Toda alteração passa por testes automáticos antes de poder chegar ao ambiente de produção.
• Cada publicação fica identificada pela versão do código, permitindo restaurar rapidamente a versão
anterior se houver qualquer problema.
• As mudanças são conferidas primeiro em ambiente de validação e só então liberadas para a operação.
• Ao final da publicação, uma verificação confirma que os serviços essenciais voltaram a responder antes
de encerrar o processo.
• Credenciais de storage, pagamentos, integrações e banco permanecem fora do código e são tratadas
como dados restritos do ambiente.
Acompanhamento operacional
A rotina de operação acompanha disponibilidade do site e do Kanban, andamento da fila de processamento, falhas de
integração e resultado das cópias de segurança. Assim, qualquer desvio é identificado antes de interromper o
atendimento ou a produção.
Página 6
DTF Dropstar - plano de entrega
MVP EM ATÉ 3 SEMANAS
Roadmap de implementação
O cronograma considera a base de código existente e dedicação integral. A prioridade é concluir o fluxo
completo - envio, pagamento, frete, pedido e acompanhamento - antes de qualquer integração com as
máquinas. As regras comerciais seguem exatamente o que já está configurado no Site DTF.
QUANDO ENTREGA RESULTADO
Sem. 1 Infraestrutura e upload VPS, domínio, banco, R2, upload multipart, antivírus e base do
serviço.
Sem. 2 Pagamento, frete e pedido Mercado Pago, cotação de frete, criação idempotente no Tiny,
geração do arquivo final e estados principais do Kanban.
Sem. 3 Kanban e entrega Kanban online, download seguro, mensagens de status no WhatsApp,
retenção de 30 dias e orientação à operação.
Fora da primeira entrega
A primeira entrega termina no download do arquivo final pelo Kanban e na orientação de uso à operação. Integração
direta com FlexiPRINT, agente dentro da fábrica, pasta monitorada, painel de sala e relatórios avançados não fazem
parte deste prazo. O pré-flight automático será validado depois da entrega, com arquivos e impressão reais. A fábrica
mantém esses recursos no ambiente atual; após a entrega, damos suporte e avaliamos mudanças conforme a
necessidade.
O que fica com a operação
• Acessar o Kanban, baixar o arquivo final e importá-lo manualmente no FlexiPRINT atual.
• Realizar os testes de impressão e informar qualquer diferença encontrada no arquivo ou no resultado
impresso.
• Manter computadores, FlexiPRINT, perfis de impressão, impressoras e eventuais pastas internas
funcionando.
• A conexão local é necessária apenas para a equipe acessar o Kanban e baixar o arquivo na fábrica. Se
ela cair, portal, pagamentos, uploads e fila continuam ativos na nuvem; a produção retoma quando o
acesso local voltar.
• Comunicar mudanças de preços, frete ou regras operacionais que precisem ser refletidas no sistema.
O que precisamos para começar
• Credenciais do Mercado Pago, incluindo a configuração do webhook para confirmação de pagamento.
• Dados da integração de frete: plataforma(s) já utilizada(s), acesso à API, CEP de origem, serviços
oferecidos, regra de cobrança e referência de peso e dimensões por pacote.
Antes de começar
Com esses acessos e dados liberados, a primeira semana pode começar. A tabela, os descontos e as regras comerciais
já existentes no Site DTF serão mantidos. Tiny/Olist e WhatsApp já estão disponíveis; durante o desenvolvimento será
definida a ligação técnica dessas integrações com os eventos do pedido. A fábrica valida a impressão depois, baixando
o arquivo final pelo Kanban.
Página 7

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 190 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 197 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 192 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 143 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 278 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 257 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 197 KiB

View File

@@ -1,141 +0,0 @@
set. 9, 2026
Reunião em 9 de set. de 2026
às 09:39 GMT-03:00
Registros da reunião Gravação
Resumo
Reunião de planejamento com foco na automação de processos via portal
dedicado e melhoria produtiva.​
​
Automacao do DTF e Checkout​
Portal automatizado reconhece arquivos e valida parâmetros. Checkout via
Mercado Pago aprova pedidos automaticamente.​
​
Gestao de Pedidos e Precos​
Sistema Kanban organiza fluxo de trabalho e rastreabilidade. Clientes com arquivos
prontos recebem 20 porcento de desconto.​
​
Priorizacao e Viabilidade Tecnica​
Projeto DTF ganha prioridade sobre o PCP para ganhos rápidos. Servidor externo e
FTP suportam uploads pesados.
Decisões
Precisa de mais conversa
●​ Definição de solução para arquivos pesados Ficou pendente de estudo
técnico a viabilidade de envio de arquivos grandes para evitar problemas no
navegador.
Alinhada
●​ Estruturação de portal e subdomínio DTF Ficou alinhada a criação de um
novo subdomínio dedicado ao DTF com checkout transparente e fila de
impressão.
●​ Priorização do projeto DTF sobre PCP Ficou acordado pausar o PCP e
definir o desenvolvimento do módulo DTF como prioridade máxima.
Próximas etapas
​ [Marcus Fernandes] Enviar referencias: Enviar para Jorge e Cauê os links de
referência do site para o novo módulo DTF.
​ [Jorge Faleiros, Cauê Faleiros] Criar roadmap: Estruturar o plano de
desenvolvimento do sistema após analisar os requisitos e gargalos técnicos.
​ [Jorge Faleiros, Cauê Faleiros] Estudar infraestrutura: Avaliar custos de
hospedagem e soluções técnicas para viabilizar o upload de arquivos
grandes no servidor externo.
Detalhes
●​ Problema de Processo no DTF e Solução Proposta: Marcus Fernandes
identifica um gargalo na produção de DTF (Direct to Film), onde designers
perdem tempo corrigindo arquivos mal formatados ou despadronizados
enviados pelos clientes. A solução proposta consiste em criar um portal
automatizado que reconhece os arquivos, verifica parâmetros de qualidade
e metragem, e cria filas de impressão automaticamente, evitando a
dependência constante do atendimento manual e permitindo a
escalabilidade do negócio.
●​ Arquitetura do Sistema e Servidor Externo: Para garantir a continuidade
da operação mesmo em casos de falhas de energia ou conexão local, a
equipe planeja utilizar um servidor externo para o recebimento inicial dos
arquivos. O sistema deve conectar-se tanto a servidores internos quanto
externos, com um painel de identificação para monitorar a movimentação
dos arquivos, integrando-se aos processos já existentes.
●​ Automação do Pagamento e Checkout: O processo atual de aprovação
manual de pagamentos impede que a sala de impressão opere 24 horas por
dia. Marcus Fernandes propõe a criação de um novo domínio exclusivo para
o módulo DTF, utilizando um sistema de checkout transparente via Mercado
Pago, o que permitirá a aprovação automática dos pedidos e a liberação
imediata para a fila de produção.
●​ Gestão de Pedidos e Integração com Kanban: O fluxo de trabalho será
gerido por meio de um sistema Kanban para evitar a perda de arquivos e
garantir uma ordem de chegada linear, resolvendo o problema de pedidos
esquecidos. Este sistema deve se integrar com o Tine para gerar tags nos
pedidos, utilizar o número do pedido para rastreabilidade na expedição e
calcular correios ou transportadoras para o cliente.
●​ Interface do Site e Estrutura de Preços: O site contará com uma interface
intuitiva onde os clientes poderão fazer upload de arquivos e receber
feedback imediato sobre a qualidade. Será implementado um modelo de
precificação diferenciado: clientes que enviarem arquivos prontos e dentro
dos parâmetros ideais receberão um desconto de 20%, enquanto aqueles
que exigirem suporte de design pagarão um valor maior, incentivando o
envio de arquivos de qualidade.
●​ Fluxo de Trabalho do Design: Mesmo com a automação, os designers
continuarão a realizar um trabalho ativo, ajudando clientes que possuem
dificuldades, mas com uma carga de trabalho mais otimizada. Os designers
utilizarão pastas específicas no servidor interno para tratar os arquivos,
garantindo que o fluxo de conversão (por exemplo, para PDF) seja
padronizado antes da impressão.
●​ Segmentação de Clientes e Proposta de Valor: Marcus Fernandes
enfatiza a necessidade de distinguir entre clientes que enviam artes prontas
e clientes que precisam de auxílio, evitando que a empresa perca margem ou
produtividade ao misturar ambos os perfis. A automação visa permitir que a
equipe foque o trabalho de design onde ele é realmente necessário,
aumentando a capacidade produtiva de 10.000 para 25.000 metros
mensais.
●​ Viabilidade Técnica e Dashboard de Produção: A equipe discute a
viabilidade técnica de criar um painel (dashboard) para a sala de impressão,
que exibirá dados das máquinas, metragem produzida e retrabalhos,
conectando-se ao software de impressão (Flexprint). Cauê Faleiros e Jorge
Faleiros validam que o projeto é executável, dependendo apenas da
verificação das capacidades da API do sistema Tine.
●​ Priorização do Projeto DTF sobre o PCP: Marcus Fernandes propõe pausar
parcialmente o projeto de PCP (Planejamento e Controle da Produção) para
priorizar a implementação do módulo DTF, visto que este último possui um
escopo mais definido, um ciclo de entrega claro e promete ganhos
imediatos de produtividade e redução de pessoal.
●​ Desafios Técnicos e Próximos Passos: Jorge Faleiros levanta
preocupações sobre o upload de arquivos pesados (que podem chegar a 5
GB) via navegador, sugerindo a necessidade de estudar soluções
alternativas como FTP. Como próximos passos, Jorge Faleiros e Cauê
Faleiros definirão um roadmap, avaliarão custos de hospedagem e a
infraestrutura necessária para suportar os uploads, enquanto Marcus
Fernandes enviará sites de referência para análise da lógica de
funcionamento.
Revise as anotações do Gemini para checar se estão corretas. Confira dicas e saiba
como o Gemini faz anotações
Como está a qualidade de destas observações? Responda a uma breve pesquisa
para nos dar seu feedback, incluindo o quanto as observações foram úteis para o
que você precisa.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 KiB