Lalabase
Tickets, Doku, Zeiterfassung und Kundengespräche an einem Ort, durchsuchbar per KI. Für Softwarefirmen mit Kundenprojekten. Open Source: auf deinem eigenen Server oder in unserer Cloud in Deutschland.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗The manager's web application for PG's Catering (Bayawan City, Negros Oriental). It runs the business side of every booking: approving requests, recording payments, assigning equipment and vehicles, and reporting on the money. Customers book through the separate CaterSync mobile app; both apps share one Supabase database.
Live: https://catersync-web-application.vercel.app
| Part | Used for |
|---|---|
| React 19 + React Router 7 | The user interface and page routing |
| Vite 8 | Development server and production build |
| Tailwind CSS 4 | Styling |
| Supabase (PostgreSQL, Auth, Storage, Realtime) | Database, sign-in, uploaded images, live updates |
| Recharts | Report charts |
| html2canvas + jsPDF | The downloadable Booking Details sheet (PNG / PDF) |
| Vercel | Hosting; every push to main deploys |
Requirements: Node.js 20.19+ or 22.12+.
npm install
npm run dev # http://localhost:5173
npm run build # production build into dist/
npm run lint # code checks
Create frontend/.env with the Supabase project's details:
VITE_SUPABASE_URL=https://<project>.supabase.co
VITE_SUPABASE_ANON_KEY=<anon key>
Only an account listed in the manager table can sign in.
src/
main.jsx entry point
App.jsx providers and the route table
brand.js the logo (change it here at handover)
supabase.js the shared Supabase client
layouts/ the frame around signed-in pages (top bar, sidebar)
pages/ one file (or folder) per screen
components/ pieces shared by several pages (pop-ups, form fields, filters)
hooks/ the booking actions: approve, reject, confirm, complete,
cancel, record and verify payments; live refresh
contexts/ app-wide state: the signed-in manager, confirm dialogs
utils/ business rules and helpers (money, equipment, vehicles,
dates, formatting)
Every file begins with a comment saying what it is for. Pages also name their
route and point to their reference page in docs/pages/. A file-by-file list
is in docs/SOURCE_INDEX.md.
The same rule is never written twice; each has one owner that every page uses.
| Rule | File |
|---|---|
| What counts as revenue, cash received and receivable | utils/reportMetrics.js |
| What counts as collected money; payment statuses | utils/payments.js |
| Booking statuses and their order | utils/bookingStatus.js |
| Equipment needed for an event, and stock | utils/equipment.jsx |
| Vehicle trips, time windows and dispatch | utils/vehicle.js |
| When a booking may be marked Completed | utils/completion.js |
| Password rules | utils/passwordPolicy.js |
Pending ──approve──> Approved ──50% paid──> Confirmed ──event passed + fully paid──> Completed
│ │
└──reject──> Rejected └──cancel──> Cancelled
Package bookings and short orders (tray orders) follow the same lifecycle. Short orders have no equipment.
| Term | Meaning |
|---|---|
| Gross Revenue | The value of Confirmed and Completed bookings in the period |
| Cash Receipts | Money actually received for those bookings, net of refunds, plus forfeited deposits |
| Accounts Receivable | What is still owed on them |
| Total Value | A customer's Confirmed and Completed bookings, all time |
Cash Receipts + Accounts Receivable = Gross Revenue.
| Document | Contents |
|---|---|
docs/pages/ | One page per screen: purpose, rules, tables read and written |
docs/HANDOFF.md | Constraints, conventions, and replacing the logo |
docs/ops-manager-sync.md | The contract with the Operations Manager app |
docs/mobile-contract.md | What the customer mobile app reads and writes |
sql/ | Database changes applied to the shared Supabase project |