尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗1:1 port of the Laravel payroll system to Next.js (App Router) for Vercel + Supabase Postgres. No authentication (matches the source app — this is meant to sit behind a private Vercel URL only you know).
Install dependencies
npm install
Create the Supabase tables
Open your Supabase project → SQL Editor → run the files in supabase/migrations/ in numeric order (001-initial-schema.sql, 002-multiuser.sql, etc.). See supabase/migrations/README.md for details.
Env vars
Copy .env.example to .env.local and fill in your Supabase project's URL and keys (Project Settings → API):
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
SUPABASE_SERVICE_ROLE_KEY=
The service role key is used server-side only (Server Components/Actions) since there's no auth/RLS — never expose it to client code.
Run locally
npm run dev
Deploy to Vercel Push to a git repo, import into Vercel, and set the same three env vars in Vercel's Project Settings → Environment Variables.
employees / payrolls tables — same columns, same (employee_id, payroll_date) uniqueness (now enforced as a real DB constraint instead of just updateOrCreate semantics)total = (daily_rate * days_worked) + ((daily_rate / 8) * overtime_hours) — unchangedPULONG, TATA ROMY, ARIEL, WILSON → MF, everyone else → BASE 3) — lib/employee.tslib/employee.tsapp/payrolls/PayrollsClient.tsxhttp://localhost testing works too since browsers treat localhost as a secure context.?success= query param that gets stripped from the URL after the toast fires. Functionally equivalent, slightly different mechanism.