Lalabase
티켓·문서·근무시간·고객대화를 한 곳에 모아 KI로 검색, 소프트웨어 기업 고객 프로젝트용, 오픈소스로 자체 서버·독일 클라우드에 배포
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Unicorn
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
There are several ways of editing your application.
Simply visit the Lovable Project and start prompting.
Changes made via Lovable will be committed automatically to this repo.
If you want to work locally using your own IDE, you can clone this repo and push changes. Pushed changes will also be reflected in Lovable.
The only requirement is having Node.js & npm installed - install with nvm
• Navigate to the desired file(s).
• Click the "Edit" button (pencil icon) at the top right of the file view.
• Make your changes and commit the changes.README 전문 보기 ↗URL: https://lovable.dev/projects/7abb2c2a-f78c-4be6-b1cd-d9d294bff530
There are several ways of editing your application.
Use Lovable
Simply visit the Lovable Project and start prompting.
Changes made via Lovable will be committed automatically to this repo.
Use your preferred IDE
If you want to work locally using your own IDE, you can clone this repo and push changes. Pushed changes will also be reflected in Lovable.
The only requirement is having Node.js & npm installed - install with nvm
Follow these steps:
# Step 1: Clone the repository using the project's Git URL.
git clone <YOUR_GIT_URL>
# Step 2: Navigate to the project directory.
cd <YOUR_PROJECT_NAME>
# Step 3: Install the necessary dependencies.
npm i
# Step 4: Start the development server with auto-reloading and an instant preview.
npm run dev
Edit a file directly in GitHub
Use GitHub Codespaces
This project is built with:
Simply open Lovable and click on Share -> Publish.
Yes, you can!
To connect a domain, navigate to Project > Settings > Domains and click Connect Domain.
Read more here: Setting up a custom domain
Every user-JWT edge function gates the caller through
public.check_permission via supabase/functions/_shared/requireCaller.ts.
Do not add new unicorn_role / global_role / is_vivacity_internal /
role_type allowlists. public.users has no role_type column — that
legacy check failed closed.
import { requireCaller, FeatureKeys, allowTenantMember } from "../_shared/requireCaller.ts";
const caller = await requireCaller(req, admin, {
featureKey: FeatureKeys.staffEmailSend,
orAllow: ({ userId, admin }) => allowTenantMember(admin, userId, tenant_id),
});
if (!caller.ok) return caller.response;
check_permission always admits Super Admin. Other roles come from
role_permissions. Unknown feature keys return false (fail closed).
module.feature.action. Reuse an existing key when the allowed-set matches;
add a new key (and seed role_permissions in the same PR) when the
capability is distinct.
| Prefix | Meaning | Typical grants |
|---|---|---|
admin.* | Privileged administration | Super Admin full; others none unless noted |
staff.* | Any Vivacity internal staff | All internal roles full (incl. Team Member) |
staff.addin.use | Outlook add-in | Super Admin / Team Leader / Team Member |
admin.integrations.xero_connect | Connect/disconnect Xero | Super Admin + Integrator |
clients.* / packages.* / audits.* / academy.* / eos.* | Product modules | Per the Role Permissions editor |
Staff capability keys (prefer the specific one):
staff.internal — generic fallback for is_vivacity_internalstaff.sharepoint.usestaff.email.send — composed + Graph send; tenant members via orAllowstaff.documents.generatestaff.ai.usestaff.research.usestaff.meetings.usestaff.billing.xero_viewstaff.integrations.tgaDo not put a user-JWT gate on cron / webhook / token-redeem workers.
Leave mixed staff-OR-tenant-admin paths as requireCaller + orAllow
(allowClientAdmin / allowTenantMember). Do not fold client Admin into
role_permissions — they are not is_vivacity_internal.