cleanyourtv-app
A community-built phone app for Clean Your TV: clean up an Android TV from your phone. No laptop, no coding agent, nothing uninstalled.
Do TXT do levantamento ao memorial, planilha SIGEF, planta e peças técnicas. Loteamento com maquete 3D, divisão em partes iguais, CAR e sobreposição com o SIGEF.
Translation pending
OtherTypeScript · JavaScriptGitHub @wilkercarneiroOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Sistema para empresa de topografia/georreferenciamento: recebe o TXT da máquina de topografia, apresenta formulário de conferência (dados do serviço, confrontantes, vértices) e gera o Memorial Descritivo GEO (DOCX) e a Planilha Eletrônica de Dados Georreferenciados (ODS oficial SIGEF).
uploads-txt, templates,
gerados, todos privados) e Edge Functions (Deno):
parse-txt — valida o TXT, detecta fuso, converte coordenadas (proj4),
sugere trechos/tipos e cria o serviço em rascunho. Quando o serviço
confronta com área certificada, recebe também os CSVs de exportação do
SIGEF dos vizinhos com os vértices escolhidos e os une ao levantamento
(_shared/certificados.ts: igualar a ≤ tolerância, inserir no lado mais
próximo; o vértice sai com código/GMS/método/σ/Z do vizinho).gerar-documentos — monta o serviço a partir do banco (fonte da verdade),
aloca códigos de vértice (contadores transacionais via RPC
alocar_contadores), gera DOCX + ODS e grava no bucket gerados
(regeração ilimitada, arquivos sobrescritos).admin-setup — ferramenta de deploy p/ subir os templates oficiais ao
bucket templates (protegida por segredo na tabela config_setup).supabase/functions/_shared/geo.ts): pipeline
auto-consistente — UTM → geográficas (SIRGAS2000), arredondamento canônico
dos segundos a 3 casas (half-up), re-projeção e TODOS os cálculos (azimutes,
distâncias, área shoelace, perímetro) no plano re-projetado.npm install
npm test # todos os testes do motor e dos geradores (node --test)
npm run test:engine # só os testes de aceitação do motor (LARISSA.txt)
npm run test:rls # isolamento entre escritórios num Postgres descartável
npm run dev # frontend local (precisa de .env)
npm run build # build de produção
npm run make:docx-template # regenera reference/memorial-template.docx
npm run upload:templates # envia templates ao Storage (env: SETUP_SECRET)
npm run deploy:functions # publica as 9 edge functions a partir do repositório
npm run e2e # teste end-to-end contra o backend implantado
O GitHub Actions roda testes, RLS e build em todo push (.github/workflows/ci.yml)
e publica as edge functions sob demanda (Actions → "Deploy das edge functions";
precisa do secret SUPABASE_ACCESS_TOKEN).
Ver .env.example. Frontend: VITE_SUPABASE_URL, VITE_SUPABASE_ANON_KEY
e as opcionais VITE_SUPORTE_*, VITE_SENTRY_DSN (o autocadastro, #/assinar,
abre e fecha no painel do superadmin, não por variável).
Scripts: SUPABASE_URL, SUPABASE_ANON_KEY, SETUP_SECRET, E2E_EMAIL,
E2E_PASSWORD, SUPABASE_DB_URL (backup).
supabase/migrations/*.sql (via MCP/CLI/painel).insert into config_setup values ('setup_secret', '<aleatório>').npm run deploy:functions (todas; verify_jwt vem de
supabase/config.toml — só a admin-setup fica sem JWT). Segredo extra:
MAPBOX_TOKEN.npm run make:docx-template && npm run upload:templates.docs/operacao/publicar-na-vercel.md.Documentação de operação e produto:
docs/multiescritorio/ — migração de vários escritórios (proposta, com teste) e ordem de aplicaçãodocs/operacao/ — Vercel, backup/restauração e monitoramento de errosdocs/legal/ — minutas de termos de uso e política de privacidade (revisão jurídica pendente)docs/guia-primeiros-passos.md — onboarding do cliente (também na tela Ajuda)docs/comercial/ — cliente ideal, roteiro de abordagem/demo, proposta e conteúdoreference/)LARISSA.txt — TXT real usado nos testes de aceitação (fuso 24S).PLANTA.ODS — planilha oficial SIGEF usada como template-base.5MEMORIAL-INCRA.DOC — memorial legado de referência do fraseado.