Lalabase
티켓·문서·근무시간·고객대화를 한 곳에 모아 KI로 검색, 소프트웨어 기업 고객 프로젝트용, 오픈소스로 자체 서버·독일 클라우드에 배포
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기contatotrmktdigital-stack/Thiro.pedido
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Thiro.pedido — todas as 9 fases implementadas Sistema de comandas multi-restaurante.README 전문 보기 ↗
Sistema de comandas multi-restaurante. Todas as 9 fases planejadas estão implementadas e testadas de ponta a ponta: estrutura multi-restaurante, painel de super admin, login por papel (garçom, cozinha, caixa, gestão), a segunda senha da área de administração, o cadastro de cardápio (categorias e produtos), a abertura/lançamento de comandas pelo garçom (mesa, balcão/retirada ou delivery), a tela da cozinha em tempo real (KDS), o fechamento de conta direto na mesa pelo garçom (não existe uma pessoa fixa no caixa), o controle de estoque de insumos com baixa automática, os relatórios de faturamento, e uma notinha virtual na tela no lugar da impressão física (decisão do usuário — a plataforma atende vários restaurantes, cada um com impressoras diferentes, então imprimir de verdade fica pra quando fizer sentido pra um restaurante específico).
/garcom, digita o número
da mesa e escolhe uma ficha livre pra abrir a comanda, depois lança os itens do cardápio
com controle de quantidade e total ao vivo/cozinha e avança
o status (pendente → preparo → pronto) com um clique; a tela atualiza sozinha (Supabase
Realtime) assim que o garçom lança um item novo, sem precisar recarregar a página. O
garçom também vê o status de cada item ao vivo na comanda e marca como entregue quando
a cozinha finaliza/garcom, o garçom escolhe o tipo de
atendimento — mesa (como já era), balcão (só o nome do cliente) ou delivery (nome,
telefone, endereço e taxa de entrega). Cada tela (garçom, cozinha, caixa) mostra a
identificação certa pra cada tipo, e o fechamento no caixa soma a taxa de entrega ao
total da contathiro-pedido) e uma senha de banco de dados
forte (guarde essa senha em um lugar seguro, ela é diferente das senhas do sistema)supabase/sql/001_fase1_fundacao.sql deste projeto, copie todo o conteúdo
e cole no editorComo o cadastro de restaurantes é sempre feito por você (nunca pelo próprio dono do restaurante se inscrevendo sozinho), vamos fechar essa porta:
insert into public.profiles (id, restaurant_id, full_name, role)
values ('COLE-O-UID-AQUI', null, 'Seu Nome', 'super_admin');
Isso exige o Supabase CLI instalado no seu computador. Se você não tiver, me avise que eu te guio na instalação — ou podemos fazer essa etapa juntos quando chegar a hora.
npm install -g supabase
supabase login
supabase link --project-ref SEU-PROJECT-REF # está em Project Settings > General
supabase functions deploy create-user
.env.example para um novo arquivo chamado .envVITE_SUPABASE_URL=https://SEU-PROJETO.supabase.co
VITE_SUPABASE_ANON_KEY=sua-chave-anon-aqui
npm install
npm run dev
Abra o endereço mostrado no terminal (normalmente http://localhost:5173), entre com o
e-mail/senha do super admin que você criou no passo 4, e você deve cair no painel de
criação de restaurantes.
src/
lib/supabaseClient.js cliente do Supabase (usa as chaves do .env)
context/AuthContext.jsx sessão, perfil e restaurante do usuário logado
context/AdminGateContext.jsx controle da segunda senha de administração
components/ layout, rotas protegidas, redirecionamento por papel, ConfirmButton (confirmação sem diálogo do navegador), Notinha (recibo virtual), charts/ (BarList, VerticalBars)
pages/
Login.jsx
superadmin/ painel do super admin (criar/gerenciar restaurantes)
gestao/ painel de gestão + área de administração (PIN) + cardápio + comandas físicas + usuários + estoque/receitas + relatórios
garcom/ comandas abertas (mesa/balcão/delivery) + lançamento de itens + fechamento na mesa
cozinha/ fila de pedidos em tempo real (KDS)
caixa/ "Notinhas de hoje": comandas fechadas hoje + notinha virtual de cada uma
supabase/
sql/001_fase1_fundacao.sql schema do banco + segurança (RLS) da Fase 1
sql/002_fix_pgcrypto_search_path.sql correção do PIN (pgcrypto no schema extensions)
sql/003_fase2_cardapio.sql tabelas de categorias/produtos + RLS da Fase 2
sql/004_fase3_mesas_comandas.sql tabelas de comandas/itens da Fase 3 (mesas removida na 005)
sql/005_comandas_fisicas.sql comandas físicas + mesa digitada (ajuste da Fase 3)
sql/006_fase4_cozinha_realtime.sql RLS de cozinha + Realtime ligado em comanda_itens (Fase 4)
sql/007_fase5_caixa.sql forma de pagamento + trava de itens após fechar (Fase 5)
sql/008_fase6_balcao_delivery.sql tipos de atendimento mesa/balcão/delivery (Fase 6)
sql/009_fase7_estoque.sql insumos, receitas e baixa automática por trigger (Fase 7)
functions/create-user/ Edge Function que cria novos logins com segurança
Relatórios (Fase 9) e a notinha virtual (Fase 8) não precisaram de SQL novo — são só código de frontend.
O sistema já está no ar em https://thiro-pedido.vercel.app, hospedado no Vercel (time
"Thiro", projeto thiro-pedido), com deploy automático a cada git push na branch main. O
código-fonte está no GitHub em contatotrmktdigital-stack/Thiro.pedido.
Detalhes importantes de quem for mexer nessa configuração:
VITE_SUPABASE_URL e VITE_SUPABASE_ANON_KEY,
configuradas em Project Settings → Environment Variables. Como o Vite grava essas variáveis
dentro dos arquivos do site já na hora de compilar (não lê elas depois, em tempo real), toda
vez que uma delas mudar é preciso fazer um Redeploy manual no Vercel (aba Deployments → "..."
→ Redeploy) — só salvar a variável não é suficiente.sb_publishable_...) e a clássica (um token longo que começa com eyJ...). Neste projeto, a
chave nova causava erro 401 "Invalid API key" e o login parava de funcionar em produção — use
sempre a clássica (eyJ...) tanto no .env local quanto na env var do Vercel.vercel.json: contém uma regra de rewrite ("/(.*)" → "/index.html") necessária para as
rotas do React Router (/garcom, /cozinha, etc.) funcionarem ao recarregar a página ou abrir
o link direto — sem isso o Vercel retorna 404 nessas URLs.https://thiro-pedido.vercel.app (não localhost), senão links de e-mail (como
recuperação de senha) abrem com erro de conexão recusada.Todas as 9 fases planejadas já têm código pronto e testado, e o site já está no ar. Só falta:
[email protected] está em uso hoje)Qualquer dúvida em algum desses passos, é só chamar — posso te guiar em cada etapa.