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,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Sistem Pengurusan & Serahan PPE - Next.js + Supabase
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Aplikasi web untuk menguruskan permohonan dan serahan Peralatan Perlindungan Diri (PPE). Dibina dengan Next.js 16 (App Router) + TypeScript + Tailwind CSS + Supabase. Mula di sini: HANDOVER.md — dokumen serahan lengkap (seni bina, skema, peraturan bisnes, isu diketahui, cara guna semula). Jika README ini bercanggah dengan HANDOVER.md, HANDOVER.md yang betul.檢視完整 README ↗
Aplikasi web untuk menguruskan permohonan dan serahan Peralatan Perlindungan Diri (PPE). Dibina dengan Next.js 16 (App Router) + TypeScript + Tailwind CSS + Supabase.
Mula di sini: HANDOVER.md — dokumen serahan lengkap (seni bina, skema, peraturan bisnes, isu diketahui, cara guna semula). Jika README ini bercanggah dengan HANDOVER.md, HANDOVER.md yang betul.
/ — cari nama, pilih PPE layak
mengikut jawatan, hantar permohonan. Staf baru daftar di /daftar./hr/dashboard — semak & lulus/tolak
permohonan, urus stok (ikut saiz), urus pekerja, lulus pendaftaran staf baru, lihat rekod,
muat turun PDF serahan, import/eksport Excel.supabase/migrations/0001_init.sql,
0002_stock_by_size.sql, 0003_employee_registrations.sql. (Jangan jalankan semula
0001 selepas 0002 — lihat HANDOVER.md §5.)Salin .env.local.example kepada .env.local dan isikan:
NEXT_PUBLIC_SUPABASE_URL=https://xxxxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=xxxxx
Kod tidak menggunakan service_role key; jangan letaknya dalam repo atau kod client.
npm install
npm run dev
Buka http://localhost:3000 untuk borang pekerja, dan http://localhost:3000/hr/login untuk log masuk HR.
Buka Supabase Dashboard → Authentication → Add user → masukkan emel &
kata laluan staf HR pertama. Log masuk di /hr/login menggunakan kelayakan itu.
.env.local di Vercel
Project Settings → Environment Variables.main akan auto-deploy.app/
├── page.tsx # Borang pekerja (awam)
├── hr/
│ ├── login/page.tsx # Log masuk HR
│ └── dashboard/
│ ├── layout.tsx # Shell + proteksi auth
│ ├── inbox/page.tsx # Papan pemuka + permohonan menunggu
│ ├── stock/page.tsx # Urus stok PPE
│ ├── employees/page.tsx# Pangkalan data pekerja
│ ├── records/page.tsx # Rekod & import data lama
│ └── settings/page.tsx # Tetapan syarikat
components/
├── worker/RequestForm.tsx
├── hr/{DashboardShell,RequestModal,ImportModal,KpiTile}.tsx
└── ui/{Button,Card,Badge,Modal}.tsx
lib/
├── supabase/{client,server,middleware}.ts
├── ppe-config.ts # Peraturan kelayakan PPE & saiz/kuantiti (§6.1–6.2)
├── pdf/{handover,downloadForRequest}.ts
└── excel/{employees,stock,records,shared}.ts
supabase/migrations/000{1,2,3}_*.sql
proxy.ts # Proteksi laluan /hr/dashboard (Next.js 16 "proxy")
SELECT daripada view employees_public (tanpa
No. IC) dan settings, serta INSERT pada requests dan employee_registrations.
Lihat HANDOVER.md §4 untuk model keselamatan penuh.approve_request (transaksi
atomik: tolak stok + tandakan status issued dalam satu transaksi Postgres).jsPDF) mengikut susunan tepat §6.5 —
tidak memaparkan lajur "Keluar"/"Baki Stok".