Migração Completa de Sistema Web para Supabase com Refatoração e Se...
Description
Estamos buscando um desenvolvedor experiente para realizar a migração de um sistema web de gestão de qualidade da água. O objetivo principal é migrar todos os dados atualmente armazenados em localStorage para a plataforma Supabase, utilizando seus serviços de Autenticação (Auth), Banco de Dados (PostgreSQL) e Armazenamento (Storage), garantindo que todas as funcionalidades existentes permaneçam intactas.
Visão Geral do Sistema Atual:
O sistema é uma plataforma de gestão de qualidade da água, desenvolvida com html, css e javascript puro. Possui uma estrutura monolítica com um arquivo de aproximadamente 1,5 MB e 3 páginas auxiliares (dashboard, vazão, diagnóstico). É Composto por 8 módulos JavaScript (incluindo estoque, manutenção, vazão, exportação, geolocalização, entre outros) e armazena dados em localStorage. O sistema é multiempresa e suporta 4 perfis de usuário: superadmin, admin, operator e viewer.
Escopo Detalhado da Migração:
1. Autenticação: Substituir o sistema de atual pelo Supabase Auth. Será necessário criar uma tabela de perfis (profiles) para gerenciar roles e empresas, e implementar um controle de acesso baseado em função.
2. Banco de Dados: Criar 18 tabelas no Supabase PostgreSQL, com validação de relacionamentos e índices para garantir a integridade dos dados.
3. Refatoração do Storage: Substituir o uso de localStorage pelo Supabase Storage. Isso envolverá a conversão de funções para o padrão async/await e a atualização de aproximadamente 35 pontos de integração em todos os módulos JavaScript.
4. Migração de Dados: Exportar os dados existentes do sistema atual em formato JSON e importá-los para o Supabase. As fotos associadas também deverão ser migradas para o Supabase Storage.
5. Segurança (RLS): Implementar e configurar políticas de Row Level Security (RLS) por empresa, ajustando o controle de acesso multiempresa e o upload de imagens.
6. Páginas Auxiliares: Integrar o Supabase sdk nas páginas auxiliares, implementar a nova autenticação e substituir todas as chamadas rest existentes.
7. Usuário Viewer: Garantir que o perfil de usuário 'Viewer' tenha acesso a múltiplas empresas, com redirecionamento correto para o dashboard e filtragem de dados por empresa.
Limitação e Solução:
O CRUD de usuários exige o uso de service_role, o que não é permitido no front-end. Como solução, para o MVP, a criação de usuários será feita via painel administrativo. A solução definitiva envolverá o desenvolvimento de uma Edge Function.
O que já está pronto:
* Documentação detalhada do projeto (7 fases).
* Scripts SQL para as 18 tabelas.
* Políticas RLS definidas.
* StorageAdapter reescrito.
* Scripts de exportação/importação de dados.
* Auditoria completa do sistema.
Requisitos do Desenvolvedor:
* Proficiência em JavaScript avançado (incluindo async/await).
* Experiência comprovada com Supabase (Auth, DB, Storage, RLS).
* Habilidade para trabalhar com código legado.
* Conhecimento e uso obrigatório de Git para controle de versão.
Entregáveis:
* Sistema web 100% funcional após a migração.
* seguro implementado com Supabase Auth.
* Todos os dados migrados para o Supabase PostgreSQL.
* Todas as fotos migradas para o Supabase Storage.
* Políticas RLS ativas e configuradas.
* Páginas auxiliares totalmente integradas com Supabase.
* Funcionalidade completa para o perfil de usuário 'Viewer'.
* Relatório técnico detalhado da migração.
* Suporte técnico por 30 dias após a conclusão do projeto.
Category: IT & Programming Subcategory: Web development What is the scope of the project?: Medium-sized change
Skills
Want AI to find more roles like this?
Upload your CV once. Get matched to relevant assignments automatically.