No updates detected yet. GitHub releases will appear here.
Loading the full README. The saved excerpt is shown below.
A web application for Goodenough College Estates: contractors sign in/out without a login
(typically via a QR code at the site entrance), engineers log daily shifts and overtime, and
managers get a dashboard covering attendance, compliance, parking, and weekly planned works.Read the full README ↗A web application for Goodenough College Estates: contractors sign in/out without a login (typically via a QR code at the site entrance), engineers log daily shifts and overtime, and managers get a dashboard covering attendance, compliance, parking, and weekly planned works.
/dashboard with a PIN, which also grants a signed session the API checks on
every request — the PIN screen is a login, not just a UI convenienceexceljs for the Planned Works Excel export (merged cells, fills, an embedded logo);
xlsx for the simpler Monthly Summary export/pages → Next.js pages: public sign-in/out (index.js) and the manager dashboard
/pages/api → API routes — one file per endpoint
/components → React components used by the pages above
/lib → Supabase data layer (db.js), config, session auth, UK time helpers
/styles → global CSS
/supabase-schema.sql → hand-maintained database schema (run manually in Supabase)
git clone <this repo's URL>
cd Contractor_attendance-main
npm install
cp .env.local.example .env.local # then fill in the values — see SETUP_GUIDE.md
npm run dev
Open http://localhost:3000. Full setup (Supabase, environment variables, Vercel deployment, first-run seed data) is in SETUP_GUIDE.md; day-to-day usage for engineers and managers is in USER_GUIDE.md.
Email alerts (overdue contractors) are currently dormant — no verified sending domain exists yet, so the code is kept in place but unreferenced; an on-screen banner covers the same need in the meantime. See MEMORY.md for the reasoning and how to revive it.