尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Fundação de uma plataforma SaaS B2B modular de comunicação empresarial: multiempresa, RBAC granular, planos/assinaturas, marketplace de módulos e painel administrativo. Módulos de canal (WhatsApp, Telegram, Instagram, E-mail, SMS, IA) são fases futuras — esta base não implementa nenhum deles, só a estrutura pronta para recebê-los.
Stack: Next.js 16 (App Router) · React 19 · TypeScript · Tailwind CSS v3 (ver
nota abaixo sobre por que não v4) · shadcn/ui · Prisma 7 (driver adapter
@prisma/adapter-pg) · PostgreSQL (Supabase) · Better Auth (email/senha +
plugins organization/admin).
npm install
cp .env.example .env # preencha DATABASE_URL, BETTER_AUTH_SECRET, etc.
npm run db:push # ou npm run db:migrate — cria/atualiza as tabelas
npm run db:seed # catálogo de permissões, planos, módulos, admin da plataforma
npm run dev
Abra http://localhost:3000.
Esta máquina roda uma política de Controle de Aplicativo (WDAC/Smart App
Control) que bloqueia a execução de binários nativos (.node/.exe)
baixados via npm — mesmo os de pacotes legítimos e amplamente usados. Isso
afeta três pontos da stack, todos com uma solução permanente e documentada
(nada de "gambiarra silenciosa"):
dev:webpack/build:webpack nesta
máquina; dev/build (Turbopack) continuam sendo os scripts corretos
para qualquer outra máquina/CI sem essa restrição.tailwind.config.ts + postcss.config.mjs
clássicos), que roda 100% em JavaScript, sem nenhum binário. O motor
nativo (@tailwindcss/oxide) é bloqueado como os outros; o fallback WASM
oficial (@tailwindcss/oxide-wasm32-wasi) carrega sem erro, mas seu
Scanner.scan() retorna sempre 0 classes nesta máquina — confirmado
isolando o pacote diretamente, não é um problema de configuração. Como
não existe um motor 100% JS para o v4 (só nativo ou WASM), não há
contorno: quem quiser v4 de verdade precisa rodar numa máquina sem essa
política.schema-engine (usado por prisma db push/migrate) também é
nativo e bloqueado aqui — mesmo o Prisma 7 já sendo "rust-free" para
consultas (usa @prisma/adapter-pg, sem binário nativo nenhum para isso).
Migrations são aplicadas manualmente com npm run db:migrate:apply
(scripts/apply-migrations.mjs: conecta via pg puro, aplica toda pasta
em prisma/migrations/* ainda não registrada e grava em
_prisma_migrations, na ordem dos nomes/timestamps), para que
prisma migrate deploy funcione normalmente a partir de qualquer outra
máquina/CI sem essa restrição. Toda migration nova criada aqui só precisa
da pasta com o migration.sql — o script pega automaticamente; ou rode
prisma migrate dev numa máquina sem essa política.tsx/ts-node também não instalam (dependem do binário nativo do
esbuild). Scripts standalone em TypeScript (seed, etc.) rodam com
node scripts/run-ts.mjs <arquivo>.ts — usa o suporte nativo do Node 22+
para TypeScript, mais um pequeno loader
(scripts/bundler-resolve-loader.mjs) que resolve imports sem extensão do
jeito que um bundler resolveria (necessário porque o gerador prisma-client
do Prisma 7 assume que quem consome o client é um bundler).Ver o restante do código-fonte — organizado por domínio em src/
(app/, components/, lib/, actions/, repositories/, services/).