CompanyRemote

Migração Completa de Sistema Web para Supabase com Refatoração e Se...

Project-Based

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

REST APIDatabasePostgresSQLWeb developmentGitSystem AnalysisSecurityCSSJavaScriptSoftware TestingPostgreSQLSQLHTMLREST

Want AI to find more roles like this?

Upload your CV once. Get matched to relevant assignments automatically.

Try personalized matching