Modernização de Legado·2026
CidadeTur
8 páginas refatoradas em 23 componentes reutilizáveis · entregue em 8 dos 12 dias contratados
- Papel
- Engenheiro único (refatoração, redesign, homologação e tooling de deploy)
- Período
- Jun–Jul 2026 · entregue em 8 dos 12 dias contratados
Resumo
Um portal de turismo legado em PHP/MySQL que precisava ser modernizado no lugar: em hospedagem compartilhada, com FTP como único acesso, sobre o banco de produção. As restrições eram o projeto.
Arquitetura e decisões
- O redesign começou como refatoração: oito páginas de markup copiado e colado viraram 23 componentes PHP reutilizáveis. Só o rodapé e o bloco de login estavam duplicados nos oito arquivos.
- Com apenas FTP e sem banco de homologação, construí um ambiente de homologação read-only rodando contra o banco real de produção, protegido por uma flag APP_READONLY que bloqueia escrita e devolve 403 no admin.
- O deploy é um script PowerShell FTP/FTPS que envia só os arquivos alterados e se recusa a rodar se detectar a pasta de produção: um limitador de raio de dano deliberado, porque hospedagem compartilhada não te dá desfazer.
- Um ambiente local em Docker (PHP/Apache + MySQL 8) com dados mock semeados permitiu desenvolver sem tocar nos dados do cliente.
Desafios
Problema: Como mostrar um preview ao cliente sem banco de homologação e sem arriscar escrita em produção?
Solução: Apontar a homologação para o banco de produção e tornar a escrita impossível, não apenas desencorajada: uma flag global read-only curto-circuita toda mutação e o admin devolve 403 direto. O cliente navegou conteúdo real no layout novo com zero risco aos dados.
Resultados
- 8 páginas redesenhadas; 23 componentes reutilizáveis extraídos de markup duplicado
- Aceito e pago em 8 dias, num contrato de 12
- 28 commits ao longo do trabalho, entregues em 5 parciais
- Responsividade mobile, SEO, busca em tempo real e ajustes no admin
Stack
Legado
PHPMySQL 8Apache.htaccess
Frontend
HTMLCSSJavaScript vanilla
Tooling
Docker ComposePowerShell FTP/FTPSGit
Tecnologias
PHPMySQLDockerSEOPowerShell