尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Plataforma SaaS para escritórios de advocacia em Portugal: atendimento por WhatsApp com IA especializada em imigração, gestão de contactos e consultas, base jurídica com fontes e campanhas publicitárias assistidas — com controlo humano em todos os pontos críticos.
Nome do produto: Patrono (definido em
src/config/app.ts). O repositório mantém o nome técnicolexflow.
Estado: Fases 1 a 6 implementadas e testadas (ver pendentes externos em docs/ROADMAP.md e docs/PRIVACY.md).
| Documento | Conteúdo |
|---|---|
| docs/ARCHITECTURE.md | Stack, modelo de segurança, estrutura de pastas |
| docs/DATABASE.md | Esquema atual e desenho das fases seguintes |
| docs/CREDENTIALS.md | Serviços externos, credenciais, configuração de email |
| docs/ADS.md | Publicidade: fluxo, controlo financeiro, regras de conteúdo, atribuição |
| docs/PRIVACY.md | Segurança, RGPD, subcontratantes, operação e pendentes antes de produção |
| docs/ROADMAP.md | Plano por fases e critérios de aceitação |
npm install
cp .env.example .env.local # e preencher NEXT_PUBLIC_SUPABASE_URL e NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY
As migrações estão em supabase/migrations/ e aplicam-se por ordem.
Com a CLI do Supabase:
npx supabase link --project-ref <ref-do-projeto>
npx supabase db push
Sem CLI: abrir SQL Editor no painel do Supabase e executar cada ficheiro de supabase/migrations/ por ordem.
Depois, configurar o Auth conforme docs/CREDENTIALS.md (redirect URLs, modelos de email, TOTP).
Para dar acesso de administrador da plataforma a alguém (SQL Editor):
insert into public.platform_admins (user_id)
select id from auth.users where email = '[email protected]';
npm run dev # http://localhost:3000
npm run build && npm run start
Sem as variáveis do Supabase, as páginas públicas funcionam e as áreas autenticadas mostram um aviso claro de configuração em falta.
npm run test:unit # validação, permissões, mensagens de erro
npm run db:test:up # arranca Postgres local na porta 54322 (ou defina TEST_DATABASE_URL)
npm run test:db # RLS e RPCs contra o SQL real das migrações
npm run test:e2e # Playwright, desktop e telemóvel (faz build/start automaticamente via webServer)
npm run check # lint + tipos + testes + build
Os testes de base de dados recriam a base lexflow_test, aplicam um shim mínimo do Supabase (tests/db/supabase-shim.sql: papéis anon/authenticated, auth.users, auth.uid()) e depois todas as migrações de produção. Cada teste executa como um utilizador concreto, tal como o PostgREST faz no Supabase.
Para usar um Chromium já instalado no Playwright: PLAYWRIGHT_CHROMIUM_PATH=/caminho/chrome npm run test:e2e.
Ver docs/ARCHITECTURE.md.