Skip to content

Releases: deba608/self_print

Release list

v1.1

Choose a tag to compare

@deba608 deba608 released this 24 Aug 21:46

Highlights

This release covers everything since v1.0: the full delivery system, a rebuilt admin dashboard, Supabase-backed accounts for customers and staff, bulk uploads, online payments, and remote agent updates.

Delivery system

  • New delivery staff role with its own rider dashboard: self-claim job pool, out-for-delivery / delivered status flow, GPS pin navigation
  • Home delivery as an alternative to counter pickup at upload time, with optional location pin
  • Free-delivery threshold (configurable in pricing) automatically waives the delivery fee
  • Hardening: undelivered and paid jobs are protected from cleanup, delivery fee preserved on price re-derivation, delivery option gated on file type / payment rails

Admin dashboard

  • Rebuilt as dedicated pages: Orders, Customers, Accounts, Staff, Security
  • Live updates via SSE with polling fallback, new-order alerts, batch payment marking, CSV export
  • Separate B/W and color printer selection from the Printer panel, with duplex-capability warnings
  • Security page: per-staff login history, device + IP geolocation on every login attempt

Accounts & auth

  • Customers can optionally register; guests can still order without an account
  • Staff accounts are invite-only via Supabase Auth (super_admin / admin / delivery)
  • OAuth login, forgot/reset password flows, profile editor with avatar
  • First super admin bootstrapped with node scripts/create-owner.mjs <email> <password>

Uploading & printing

  • Bulk mode: upload 2–10 PDFs in one order, with per-file overrides for print type, duplex, and copies
  • N-up printing billed by physical sheets, not raw page count
  • Customer "Additional Instructions" field surfaced in job detail
  • Order hours: shop open/close times gate new uploads

Payments

  • Razorpay checkout with all dashboard-enabled methods, plus UPI QR support
  • Refund tracking (refund_status, refunded_at)
  • Payment decoupled from print progress: jobs can print before or after payment (paidAt is the source of truth)

Print agent

  • Self-update: publish a bundle from the dev machine, install it from the admin topbar — agent swaps itself via a scheduled task and rolls back if unhealthy
  • One-click shop-PC package (npm run package:shop) with node_modules pre-installed and config baked in
  • Multi-file jobs print with collation enabled; per-file failures name the offending file

Platform

  • PWA: service worker offline shell, installable manifest, app icons
  • WhatsApp / SMS notifications for order ready, out-for-delivery, delivered, payment received
  • DOC/DOCX auto-conversion to PDF via LibreOffice
  • Automated cleanup of finished/expired jobs and their files (Vercel Cron)

Housekeeping

  • Removed dead code: unused components, unused exports across sms/whatsapp/razorpay/storage/db layers

v1.0

Choose a tag to compare

@deba608 deba608 released this 13 May 02:31